2.2.2 分支管理
最后更新于
这有帮助吗?
最后更新于
这有帮助吗?
在学习git分支管理命令之前,我们首先要搞清楚git分支的概念
在前面几节中我们每次提交都在主分支(master)中,提交信息会穿成一个分支线,而标记当前版本的HEAD指针,指向的就是master 分支,master分支又指向具体commit
在master分支上每一次提交之后,master都会把指针指向最新的提交
当我们基于master分支创建新分支develop之后,git会新建一个develop指针并指向master相同的提交,然后我们切换到develop分支之后,HEAD指针指向了develop,也就是当前分支是develop
由于我们当前处在develop分支,所以对文件的修改和提交都是针对的develop分支,所以新提交之后,develop的指针就会指向新的提交
在develop上开发完成之后,就可以把develop分支合并到master分支。合并的过程也非常简单,git只是把master的指针指向develop分支指的位置
我们通过下面的动画来更直观的看下分支合并过程
git为什么要引入分支的概念呢,因为在不同的分支上开发能够使得各个功能模块儿的开发相互独立,在开发的过程中互不影响。
不同的功能模块儿在不同的分支上提交,等开发完成之后再合并到一块儿,这样就保证了功能开发过程中文件变更相互独立
如上图所示你接到了一个开发任务要开发一个通知模块儿,如果你直接原有dev分支开发,那么你的每一次提交内容都会显现在Dev分支上,由于通知服务的功能比较多,开发过程中你肯定会提交很多次,而每次都会影响到改变Dev分支的内容,可能会导致别人拉取代码后整个项目运行不起来。
为了保证dev分支的稳定性,你新建了一个分支feature/notification,然后你每次每次文件的修改都提交到这个feature/notification分支上,这样就能保证你的每次改动都不会影响其他人。等到功能开发完成之后,再把你的分支合并到dev,就会把你开发功能内容一次提交到了dev上了,非常方便