版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/m0_38082783/article/details/83345357
学习目的
- 如何查询分支列表?
- 如何创建分支?
- 如何切换分支?
- 如何将分支进行合并?
- 如何将分支进行删除?
master分支
每次提交,Git都把它们串成一条时间线,这条时间线就是一个分支。截止到目前,只有一条时间线,在Git里,这个分支叫主分支,即master分支。HEAD严格来说不是指向提交,而是指向master,master才是指向提交的,所以,HEAD指向的就是当前分支。一开始的时候,master分支是一条线,Git用master指向最新的提交,再用HEAD指向master,就能确定当前分支,以及当前分支的提交点。
创建分支
创建分支git-study
$ git branch git-study
查看当前分支
$ git branch
git-study
* master
切换分支到git-study
$ git checkout git-study
Switched to branch 'git-study'
再次查看当前分支
$ git branch
* git-study
master
有两次查看分支:得到结论git branch命令会列出所有分支,当前分支前面会标一个*号。
修改readme.txt文件查看状态
- 修改readme.txt文件查看状态
$ git status
On branch git-study
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: readme.txt
no changes added to commit (use "git add" and/or "git commit -a")
可以看出在git-study分支,readme.txt文件被修改!
- 添加文件并提交文件
1. $ git add readme.txt
2. $ git commit -m "提交分支git-study测试"
[git-study c2799ed] 提交分支git-study测试
1 file changed, 2 insertions(+), 1 deletion(-)
- 切换回master分支
$ git checkout master
Switched to branch 'master'
Your branch is up to date with 'origin/master'.
- 创建并切换分支的综合命令
$ git checkout -b study
Switched to a new branch 'study'
合并分支
- 查看master分支readme.txt文件
$ cat readme.txt
Git is a version control system.
Git is free software.
Git is a distributed version control system.
Git is free software.
添加一行测试工作区、暂存区、分支。
cat 命令测试。
测试修改文件后各区状态!
测试git diff,查看工作区和分支文件的修改情况!
再次测试git diff对比工作区和版本库最新版本的区别。
测试撤销修改!
- 合并master分支和git-study分支
$ git merge git-study
Updating c8e9e50..c2799ed
Fast-forward
readme.txt | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
- git merge命令用于合并指定分支到当前分支。合并后,再查看readme.txt的内容,就可以看到,和dev分支的最新提交是完全一样的。
- 注意到上面的Fast-forward信息,Git告诉我们,这次合并是“快进模式”,也就是直接把master指向dev的当前提交,所以合并速度非常快。
- 当然,也不是每次合并都能Fast-forward,我们后面会讲其他方式的合并。
- 再次查询master分支readme.txt文件
$ cat readme.txt
Git is a version control system.
Git is free software.
Git is a distributed version control system.
Git is free software.
添加一行测试工作区、暂存区、分支。
cat 命令测试。
测试修改文件后各区状态!
测试git diff,查看工作区和分支文件的修改情况!
再次测试git diff对比工作区和版本库最新版本的区别。
测试撤销修改!
Creating a new branch is quick.
合并完成!合并完成!合并完成!
删除分支git-study
- 查看分支列表
$ git branch
git-study
* master
- 删除git-study分支
$ git branch -d git-study
Deleted branch git-study (was c2799ed).
- 再次查询分支列表
$ git branch
* master
总结
- 查看分支列表命令:git branch
- 创建分支命令:git branch
- 切换分支命令:git checkout
- 创建+切换分支命令:git checkout -b
- 合并分支命令:git merge
- 删除分支命令:git branch -d
其他
QQ交流群: 264303060