Git&Github入门教程笔记(4)之分支管理一

mmexport1556985375283.jpeg

八 、分支管理(一)


先列出以此小结常用命令:

git branch #查看分支
git branch + 名 #创建分支
git checkout + 名 #切换分支
git checkout -b + 名 #创建并切换到此分支(可以记为切换到新创建的分支)
git merge #合并某分支到目前的分支
git branch -d + 名 #删除分支(可以记为delete开头的d)

8.1 分支的基本概念

分支有什么用呢?假如你现在跟别人做项目,你和另一个人同时开发此软件的不同功能,假设他开发功能1,你开发功能2,而你开发的功能2才仅仅完成15%,此时你需要第二天再继续工作,你俩可以先各自创建一个分支(分支互不影响,也就是你写的代码和另一位伙伴写的代码并不冲突),然后他开发完成后将自己的分支与主分支(你们的总工程)合并,就可以实现迭代开发的一个操作,而你的分支因为没有开发完,可以先保存着,等开发完成再合并到主分支。是不是很浅显易懂呢 o(∩_∩)o 。

我们之前做的操作都是在一个主分支master基础上进行的,想象一下,HEAD指向master,master指向提交即图中的节点,提交即是增加分支节点。


来自廖雪峰官网

而增加新的分支是什么呢?可以把master和其他新的分支比作是指针,master指向这个节点的指针,而新增的分支指针则指向新的节点。
实际操作时,是先将新指针指向master同一个节点,然后HEAD(可看为头节点)指向新的节点,如下图:


来自廖雪峰官网

然后提交后,将新的指针指向新的分支:
来自廖雪峰官网

8.2 代码操作

对开头的假设进行操作

  • 创建两个分支dev1和dev2,你的分支是dev1,小伙伴的分支是dev2

git branch dev1
git branch dev2

  • 你先保存你刚写好的文件,先切换到你的分支

git checkout dev1

  • 接着add文件并且commit后就会将新创建的dev1指针指向新的一个节点即一个提交

  • 此时切换到原来master分支,即使得HEAD指向master:

git checkout master

  • 好了,你的15%代码就放这吧,明天再接着写,接下来你的小伙伴进行操作,跟你一开始同样的操作:

git checkout dev2

  • 然后add并commit
    仔细思考后你的小伙伴觉得功能已经挺好的了,不需要回改,因此可以和主分支合并啦。

git checkout master
git merge dev2

这样第一个功能就迭代成功啦,你的小伙伴合并完成后,就不需要这个指针了,可以删除了:

git branch -d dev2

(以上如有问题,不吝赐教,真心希望你的批评指正。)

(未完待续)

你可能感兴趣的:(Git&Github入门教程笔记(4)之分支管理一)