赞
踩
在版本控制过程中,同时推进多个任务,为每个任务,我们就可以创建每个任务的单独分支。使用分支意味着程序员可以把自己的工作
从开发主线上分离开来
,开发自己分支的时候,不会影响主线分支的运行。对于初学者而言,分支可以简单理解为副本,一个分支就是一个单独的副本
。(分支底层其实也是指针的引用)
正如下图所示,一个项目在部署上线之后,开发者还会源源不断的为其增添功能,而增添的每一个功能就可以认为是开启了一个分支,当这一分支功能完善后会将其提交合并到主分支,上线部署。
使用分支有以下好处:
命令名称 | 作用 |
---|---|
git branch | 分支名 创建分支 |
git branch -v | 查看分支 |
git checkout | 分支名 切换分支 |
git merge | 分支名 把指定的分支合并到当前分支上 |
git branch -v
查看当前项目一共有多少个分支,当前处在哪个分支,其中前面标有*的绿色名字为当前所处。
hot-fix代表热修复版本,也就是当前版本有严重问题需要紧急修复。
git branch +分支名(例:hot-fix)
创建完毕后如下图所示
将master分支的hello.py进行修改,修改效果入下图,可以发现当分支修改并重新提交本地库后两个分支对应的序号将会有所改变。
git checkout + 分支名(例:hot-fix)
合并分支时首先需要注意的是当前在什么分支就将另外一个分支合并到当前分支。在合并前我们要搞清楚两者关系。
合并分支后当前所处的分支代码会是最终合并后的代码,原来分支的代码不会改变。
git merge +分支名(例:hot-fix)
正常合并:
合并时有冲突:
这种冲突是因为master分支与hot-fix分支中同时修改了同一部分代码导致。需要主动地去解决冲突
产生冲突后直接编辑主分支中相应的文件,会发现出现以下结构段落。
特殊符号:<<<<<<< HEAD 当前分支的代码 ======= 合并过来的代码 >>>>>>> hot-fix
第一步修改冲突代码:
修改后的结果:
第二步将代码添加到暂存区:
git add hello.py
第三步提交冲突代码(不可带文件名
)
git commit -m "xxxx"
第四步合并代码:
git merge 分支名
可以看出,在进行分支切换时,还是利用的改变指针的指向,master、hot-fix 其实都是指向具体版本记录的指针。当前所在的分支,其实是由 HEAD决定的。所以创建分支的本质就是多创建一个指针。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。