Git:分支的创建、合并、管理和删除
2017-06-23 21:59
423 查看
了解分支
如果想实现多人协作、划出Bug区、Feature区等功能,就需要分支功能。(确实很强大的地方)每次
commit时,Git都把它们串成一条时间线,这条时间线就是一个分支。截止到目前,只有一条时间线,在Git里,这个分支叫主分支,即
master分支。而此时
HEAD也指向
master。
每次提交,
master分支都会向前移动一步,这样,随着你不断提交,
master分支的线也越来越长。
当我们创建新的分支
dev的时候,将
HEAD指向
dev,这时候就在
dev分支上了。
创建和进入分支
创建分支:git branch 分支名字
进入分支:
git checkout 分支名字
创建并且进入分支:
git checkout -b 分支名字
如果想查看当前在哪个分支:
git branch
合并分支
如果在dev分支下提交一张照片,此时,工作区是有照片的(在文件夹查看)。然后切换到
master分支,会发现本地的工作区被刷新了一下,然后图片不见了。在命令行
ls查看文件列表也没有图片(如截图所示)。此时,需要将
dev分支合并到
master分支。
合并分支:
git merge 分支名字。将分支合并到当前分支。这时可以发现,照片出现了。(附截图)
注意到上面的Fast-forward信息,Git告诉我们,这次合并是“快进模式”,也就是直接把
master指向
dev的当前提交,所以合并速度非常快。当然,也不是每次合并都能Fast-forward。
如果加上
--no-ff参数就是普通合并模式。这样就保留了历史信息。
解决分支冲突
如果两个或多个分支对同一文件作出不同的操作,合并的时候就会有冲突。如下面截图先在
dev中修改txt,再在
master中作出不同的修改。
此时,
git merge dev就会报错,提醒有冲突,需要手动解决
当然,也可以通过
git status查看,会发现
both modified的错误提示。或者
cat temp.txt,不同分支的修改的不同之处被标注了出来。
在当前分支修改文件内容并且再次提交修改,即可以解决冲突。
删除分支
一条命令:git branch -d 分支名字即可删除
如果分支还未合并到当前分支:
git branch -D 分支名字强制删除。
团队协作(分支策略)
在实际开发中,我们应该按照几个基本原则进行分支管理:首先,
master分支应该是非常稳定的,也就是仅用来发布新版本,平时不能在上面干活;
那在哪干活呢?干活都在
dev分支上,也就是说,
dev分支是不稳定的,到某个时候,比如1.0版本发布时,再把
dev分支合并到
master上,在
master分支发布1.0版本;
你和你的小伙伴们每个人都在dev分支上干活,每个人都有自己的分支,时不时地往
dev分支上合并就可以了
最后发布时,再将
dev合并到
master
欢迎进一步交流本博文相关内容:
博客园地址 : http://www.cnblogs.com/AsuraDong/
CSDN地址 : http://blog.csdn.net/asuradong
也可以致信进行交流 : xiaochiyijiu@163.com
欢迎转载 , 但请指明出处 : )
相关文章推荐
- 2016/01/13开始学习git:分支管理:创建、合并、删除分支
- git 查看、创建、切换、合并、删除分支
- git分支合并创建管理
- git创建、删除库,分支管理
- [廖雪峰] Git 分支管理(1):创建与合并分支(HEAD、master、dev、指针)
- Git教程----5.0分支管理 5.1创建与合并分支 5.2解决冲突 5.3分支管理策略 5.4Bug分支 5.5Feature分支 5.6多人协作
- git分支管理之创建与合并分支
- GIT 分支管理:创建与合并分支、解决合并冲突
- git代码管理—创建分支、合并分支、回滚代码
- git 分之管理---创建与合并分支
- Git知识总览(三) 分支的创建、删除、切换、合并以及冲突解决
- git 创建分支,删除分支,管理分支
- git 下 分支创建 合并 删除 相关操作
- GIT 分支管理:创建与合并分支、解决合并冲突
- git教程4(分支管理)创建与合并分支、Bug分支、Feature分支——廖雪峰老师
- GIT 分支管理:创建与合并分支、解决合并冲突
- git分支管理 创建、推送、查看并删除远程分支
- Git基础之(十三)——分支管理——创建与合并分支
- git分支的创建、切换、合并及删除操作小结
- GIT 分支管理:创建与合并分支、解决合并冲突