分支管理
以往做法:分开处理, 用户使用稳定版, 开发者开发开发版;
git 的做法:融合成了一个文件, 使用不同的分支管理;
创建分支:
$git log --oneline --graph #查看分支,结果前面带“*”
$git branch dev #建立dev分支
$git branch #查看当前分支
# 输出
dev
* master # * 代表了当前的 HEAD 所在的分支
$git checkout dev #把head切换去dev分支
$git branch
# 输出
* dev # 这时 HEAD 已经被切换至 dev 分支
master
$git checkout -b dev #直接创建和切换到新建的分支
$git commit -am "change 3 in dev" #"-am":add 所有改变 并直接commit
切换到master并且提交dev中的修改:
$git checkout master #切换至master才能把其他分支合并过来
$git merge dev #将dev 合并到master中
$git log --oneline --graph
备注:要注意的是, 如果直接 git merge dev
, git 会采用默认的 Fast forward
格式进行 merge
, 这样merge
的这次操作不会有 commit
信息. log
中也不会有分支的图案. 我们可以采取 --no-ff
这种方式保留 merge
的 commit
信息.
$git merge --no-ff-m "keep merge info" dev #保留merge信息