超详细git讲解

目录

前言

如果客户需要版本一,如何回退?

git的作用?

git如何实现的?

如何使用?

安装

安装步骤

配置全局用户名和邮箱

配置SSH

创建git仓库

仓库管理

新建远程仓库

克隆远程仓库

工作常用步骤

日志查看

历史命令日志

撤销修改

版本回退,慎用

分支管理

查看分支

创建分支

合并分支到当前分支

删除分支

合并远程分支(master分支之下)

两个人同时提交的话,就会出现错误,如何解决?


前言

git:团队协同开发的版本管理工具

对外开放的:码云、github、腾讯云、阿里云都可以和git对接

底层是根据版本号控制的,和java并发编程原理很像

它会拷贝很多份,如果不小心搞坏了程序,可以回退到以前的版本

git服务端会保存全部版本的代码,然后进行备份,一方出错,其他方可以复原

学习平台:Home - 廖雪峰的官方网站

腾讯云管理平台 登录 - 腾讯云

我们可能不断更改项目版本

如果客户需要版本一,如何回退?

一、备份,我们可以每次做好一版本,都保存一下

二、一点点改回去

git的作用?

版本管理工具,自动帮我们管理版本...

git如何实现的?

远程仓库:存储在某一个服务器上的

本地仓库:在我的电脑上创建这个项目

git会帮我们管理这些仓库

如何使用?

不知道你学习的时候有没有遇到这样的情况:

比如说,我们要做某一个程序,你手中有一份办成品,但现在需要在上面进行修改。

1、你怕修改之后万一出现什么错误,把原来的文件也弄坏了;

2、每当我们完成一个新的需求点之后,又来了对这个需求更好的实现方式。为了能够有及时发布我们不得不对原来的代码进行保存

于是你不得不复制出一个又一个副本,随着需求点越来对多,于是每次都是复制粘贴副本,产出的文件就越来越多,文件多不是问题,问题是:随着版本数量的增多,你还记得这些版本各自都是修改了什么吗?

为了能够更方便我们管理这些不同版本的文件,于是有了版本控制器。

安装

官网下载地址/ 群里安装包

https://git-scm.com/downloads

安装步骤

图形化安装

配置全局用户名和邮箱

git config --global user.name "Your Name" git config --global user.email "email@example.com"

配置SSH

# 生成sshkey ssh-keygen -t rsa #执行完毕上面命令之后,按几次回车 #查看公钥的内容,复制到git的sshkey位置 cat ~/.ssh/id_rsa.pub

创建git仓库

git init

状态模型

  • 工作区(workplace)
  • 暂存区(index)
  • 本地仓库(local repository)
  • 远程仓库(remote repository)

仓库管理

工作区(workpace->暂存区(index)

git add . #当前文件夹以及子文件夹 git add fileName #某个文件

暂存区(index)->本地仓库(local repository)

git commit -m '备注提交内容'

新建远程仓库

以码云为列进行安装-----需要配置公钥

克隆远程仓库

git clone xxxx地址 (不加分支默认master) #默认拉取master分支代码 git clone git@gitee.com:liuzhenyu666/test0130.git

克隆远程仓库其他分支(了解内容)

git clone -b xxxxx分支 xxxx地址 (不加分支默认master) #拉取dev分支代码 git clone -b dev git@gitee.com:liuzhenyu666/test0130.git

工作常用步骤

git status #查看当前仓库状态 git add . #添加到暂存区 git commit -m 'xxxx' #添加到本地仓库 git pull # 同步远程仓库到本地,检查远程仓库是否比本地版本更高一些 git push #推送到远程仓库

日志查看

提交日志

git log #日志 git log --pretty=oneline #美化输出,行格式显示 git log --pretty=oneline --abbrev-commit #简化版本号 行格式显示

历史命令日志

#版本相关,如果再版本回滚时误操作了,可以通过这 #个地方来找历史的版本号和命令进行恢复 git reflog

撤销和回退

撤销修改

git checkout xxx #撤销某个文件修改,这里的数据还没有提交到暂存区 git checkout . #撤销当前文件夹内所有修改 git reset --hard HEAD #放弃暂存区中所有的修改和新增

版本回退,慎用

git reset --hard HEAD #放弃当前所有修改,回退到当前版本 git reset --hard HEAD^ #回退到上一个版本

分支管理

查看分支

git branch #查看本地分支 git branch -a #查看所有分支

创建分支

git checkout -b xxx分支名字 #创建并切分支

git branch xxx分支 #创建 git checkout xxx分支 #切分支

合并分支到当前分支

git checkout master #切换到master分支 git merge xxx分支名字 #合并分支

删除分支

git branch -d # 删除已合并的分支,有未合并代码不允许删除 git branch -D # 强制删除有未合并代码的分支 git push origin --delete dev_new #删除远程分支

本地分支和远程分支第一次关联

git push origin xxx分支名字

合并远程分支(master分支之下)

git checkout master git pull origin xxx分支名字 #远程拉取XX分支 git merge origin /xxx分支名字 git push

git init 创建本地仓库

git add 文件名 提交到暂存区

git

git commit - m"备注信息" 提交到仓库

注意:以上操作需要提前配置好用户信息

//配置用户信息 git config --global user.email "you@example.com" git config --global user.name "Your Name"

提交到仓库成功的截图:

两个人同时提交的话,就会出现错误,如何解决?

git pull 拉取文件

然后线下协商哪个保留,我们就把另一个删了,重新提交 git add git commit -m" " git push

测试中遇到的问题 每次上传文档必须保证仓库是空的 怎么解决?

git pull --rebase origin master

git push -u origin master

分支

创建分支

添加文件

备注文件

提交文件

git checkout master 切换回主分支

注意! 每次都要 git pull

git merge 名字 合并分支 git pull

撤销一个版本 从暂存区撤销

git status 查看修改了哪些文件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ADRU

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值