git | 分支的理解和使用
阮一峰前辈说过,如果你严肃对待编程,就必定会使用”版本管理系统”(Version Control System)。
- 为什么选择用分支?
不晓得有没有人用版本管理系统只用过主分支,或者根本都没有分支的概念?
我们用的是svn,给我的感觉就是一个存代码的服务器,防止代码丢失
初步了解分支后发现可以合理的管理好我们项目的版本
- Git主要分支
这里以Git为例
建议主要的分支分为master
和develop
两个分支
master
用于给生产环境打包的
develop
是平时开发的版本
- 创建分支
// 从主分支创建开发分支
git checkout -b develop master
// 从开发分支创建自定义分支
git checkout -b MyBranch develop
- 将
MyBranch
合并到develop
分支
// 切换到develop
git checkout develop
// 合并分支
git marge --no-ff MyBranch
- 为什么会加上 –no-ff?
Git
默认的合并方式会直接指向MyBranch
git marge MyBranch
D -- E -- F MyBranch
/ develop
A -- B -- C
加上--no-ff
是会重新创建提交对象,这样做的好处是,如果你要回退更新,如果是上面的情况会回退到E而不是想要的C
git marge --no-ff MyBranch
D -- E -- F MyBranch
/ \
A -- B -- C G develop
--no-ff