Git安裝教程(三)分支管理之分支管理策略
阿新 • • 發佈:2018-03-29
ive comm 歷史 -a adg txt文件 post graph 刪除
合並就看不出來曾經做過合並。
通常,合並分支時,如果可能,Git會用Fast forward
模式,但這種模式下,刪除分支後,會丟掉分支信息。
如果要強制禁用Fast forward
模式,Git就會在merge時生成一個新的commit,這樣,從分支歷史上就可以看出分支信息。
下面我們實戰一下--no-ff
方式的git merge
:
首先,仍然創建並切換dev
分支:
$ git checkout -b dev Switched to a new branch ‘dev‘
修改readgit.txt文件,並提交一個新的commit:
$ git add readgit.txt $ git commit -m "add two" [dev 80d4b2e] add two 1 file changed, 1 insertion(+)
現在,我們切換回master
:
$ git checkout master Switched to branch ‘master‘
準備合並dev
分支,請註意--no-ff
參數,表示禁用Fast forward
:
$ git merge --no-ff -m "merge with no-ff" dev Merge made by the ‘recursive‘ strategy. readgit.txt | 1 + 1 file changed, 1 insertion(+)
因為本次合並要創建一個新的commit,所以加上-m
參數,把commit描述寫進去。
合並後,我們用git log
看看分支歷史:
$ git log --graph --pretty=oneline --abbrev-commit * ca2581f (HEAD -> master) merge with no-ff || * 80d4b2e (dev) add two |/ * 43fd2d3 conflict fixed
Git分支十分強大,在團隊開發中應該充分應用。
合並分支時,加上--no-ff
參數就可以用普通模式合並,合並後的歷史有分支,能看出來曾經做過合並,而fast forward
Git安裝教程(三)分支管理之分支管理策略