Git分支简介
为什么使用分支
- 如果你希望为项目增加新特性,但很可能会影响当前可正常工作的代码。对于该项目的活跃用户而言,这是很糟糕的事情。与其将特性加入到其它人正在使用的
master分支,更好的方法是在仓库的其它分支中变更代码。 - 更重要的是,Git 其设计用于协作。如果所有人都在你代码仓库的
master分支上操作,会引发很多混乱。对编程语言或项目的知识和阅历因人而异,有些人可能会编写有错误或缺陷的代码,也可能会编写你觉得不适合该项目的代码。使用分支可以让你核验他人的贡献并选择适合的加入到项目中。 (这里假设你是代码库唯一的所有者,希望对增加到项目中的代码有完全的控制。在真实的项目中,代码库有多个具有合并代码权限的所有者)。
使用分支的好处
- 同时并行推进多个功能开发,提高开发效率
- 各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响。失败的分支删除重新开 始即可。
Git 分支常用命令
查看分支:
git branch -v
创建分支:
git branch 新分支名
删除分支:
git branch -d branchname
修改分支:
git branch -m oldbranchname newbranchname
切换分支:
git checkout branchname
合并分支:
git merge branchname
Git 合并分支
创建分支
git branch branchname
切换分支
git checkout branchname
在当前分支上修改文件
vim filename
在当前分支提交
git commit -m 'branchname first commit
切换到主分支
git checkout master
合并分支
git merge branchname
将branchname分支合并到master分支
解决Git合并分支冲突
产生的原因
合并分支时,两个分支在同一个代码的同一个位置都有修改,Git无法判断,如何去留。
实例
在当前主分支修改文件
vim filename
提交文件
git add .
git commit -m 'modifiy by master' filename
切换分支
git checkout bug-fix
修改同一个文件
vim filename
提交文件
git add .
git commit -m 'modifiy by bug-fix' filename
切换到主分支
git checkout master
合并分支
git merge hot-fix
手动修改文件
vim filename
再次添加到暂存区
git add .
再次提交
git commit -m 'merge commit'
注意后面不带文件名
这样就合并成功了