1.0 Git常用命令
1.1.0 设置用户签名
说明:签名的作用是区分不同的操作者身份,用过户的签名信息在每一个版本的提交信息中能够看到,以此确认本次提交是谁做的。Git首次安装必须设置一下用户签名,否则无法提交代码。
注意:这里设置的用户签名和将来登录GitHub(或者其他代码托管中心)的账号没有任何关系。
1.2.0 初始化本地仓库 git init
注意:.git文件夹里边的东西一定不能修改,否则git将无法运行。
1.2.1 查看本地库状态 git status
下面我们来演示自己在仓库中创建一个非空的文档在工作区,再次git status
1.2.2 添加暂存区&&移除暂存区 git add && git rm --cached<file>
可以通过git rm --cached<file>命令来将文档/文件从暂存区中删除
注意:这里的删除并不是将文件/文档彻底删除,只是从暂存区中删除,工作区中如果没有进行删除操作,则工作区中仍有该文件/文档。
1.3.0 提交本地库 git commit -m 文件名
1.3.1 查看版本信息 git reflog && git log
git reflog : 查看精简版本信息,包括 版本号、分支、版本日志。
git log : 查看完整的版本信息,包括 版本号(完整版),分支,作者信息,创建日期(最新更改日期),版本日志。
1.4.0 修改文档
修改文档后,会被git检测到有改动,并且文档名称变红,表示被分配到工作区(但本地库中仍然有未修改的版本)。
重新加入到暂存区,然后提交到本地库
1.5.0 历史版本
1.5.1 查看历史版本信息git reflog && git log
git reflog : 查看精简版本信息,包括 版本号、分支、版本日志。
git log : 查看完整的版本信息,包括 版本号(完整版),分支,作者信息,创建日期(最新更改日期),版本日志。
1.5.2 版本穿梭 git reset --hard 文件名
2.0.0 git分支
分支的作用(图解)
2.1.0 什么是分支
在版本控制过程中,同时推进多个任务,为每个任务可以船舰每个任务的单独的分支。使用分支意味着可以把自己的工作从开发主线上分离开来,开发自己的分支的时候,不会影响主线分支的运行。(分支的底层其实也是指针的引用)
2.2.0 分支的操作
2.2.1 查看分支 git branch -v
2.2.2 创建分支 git branch 分支名
2.2.3 切换分支 git checkout 分支名
2.2.4 删除本地分支 git branch -d 分支名 && git brand -D 分支名(强制删除)
2.2.5 合并分支(正常合并) git merge 要合并的分支
合并分支是在当前分支的基础上区合并其他的分支
- 未合并之前的master分支的hello.txt文件内容
- 未合并之前的hot-fix分支的hello.txt文件内容
- 进行合并(在进行合并之前,需要先切换到主分支上<master>)
- 合并之后,重新查看hello.txt
2.2.6 合并分支(冲突合并)
冲突产生的原因:
合并分支时,两个分支在同一个文件的同一个位置有两套完全不同的修改。Git无法替我们决定使用哪一个。必须要人为决定新代码的内容。
冲突合并演示:
- 首先把当前分支的hello.txt进行修改(倒数第二行),并进行上传保存到本地库
- 切换到hot-fix分支去修改hello.txt(倒数第一行),并进行上传保存到本地库
- 合并出现冲突。具体如下图
解决冲突:我们需要手动去合并
- 首先查看当前hello.txt里边的内容(里边有冲突点,我们需要去手动更改)。
- 我们要手动合并,比如下图
- 手动处理完之后,需要将当前的txt文件添加到工作区,再上传到本地库。
合并成功后,最后的()内是master