什么是分支?
分支可以想象成电影中的平行宇宙,或者说你有多个分身,假定你要实现一个视频教学网站项目,平行宇宙中的你同时进行后端逻辑处理、数据库管理、前端页面设计、美工设计、运维和安全管理,最终所有分支项目合并到一个主分支,就形成了完整项目。
实际开发过程中分支有什么作用呢?比如,你要实现一个功能模块,但是需要两周时间,不完整的代码不能运行,为了不干扰其他人的正常使用,你下载当前的源码,创建一个分支开始开发,两周之后再合并到主分支中。(master是默认的主分支)
查看和创建分支
查看当前分支:git branch
创建分支:git branch feature-A
切换分支:git checkout feature-A
“*”表示我们当前所在的分支。
在feature-A分支commit 创建2.txt版本,切换回master分支,发现历史版本记录还是master分支commit的1.txt版本:
创建和切换分支合并:
然后commit:
合并分支
将feature-B合并到master上,然后删除feature-B分支:
这是一种快速合并方法,直接将HEAD指针指向feature-B。
再合并feature-A分支到master。取消快速合并:git merge --no-ff feature-A
以简短形式查看:
解决冲突
切换到A分支,修改1.txt,并commit:
切换到master分支,修改1.txt,并commit:
合并后,会产生冲突,要进行手动合并:
bug分支
当前正在feature-A工作,还未add到暂存区,突然有一个紧急的bug要进行修复:
我们先将当前现场保存起来,创建bug分支进行修复,然后切回master,合并,删除bug分支:
接下来回到feature-A恢复现场继续干活:
本文暂时没有评论,来添加一个吧(●'◡'●)