1. 程式人生 > >Git 學習筆記 - 13 - 分支管理策略

Git 學習筆記 - 13 - 分支管理策略

Git 學習筆記 - 13 - 分支管理策略

注:本文參照的是廖雪峰老師的Git教程

概述:

Git會用Fast forward模式,但這種模式下,刪除分支後,會丟掉分支資訊。之前的分支在合併後,分支的資訊就沒有了。

什麼叫資訊沒有了,就是之前你在這個分支上的修改版本都不見了,在這個分支上看到的資料和master上一樣。

如果要強制禁用Fast forward模式,Git就會在merge時生成一個新的commit,這樣,從分支歷史上就可以看出分支資訊。

但是如果想要保留自己建的分支上的修改資訊,就需要在合併的時候新增 --no-ff引數。

步驟:

  1. 先建立一個分支,名字叫dev,並進入這個分支

    git checkout -b dev
    
  2. 然後在dev分支上修改檔案,增加內容如圖二

  3. 在dev分支上面提交修改。

  4. 切回master分支

    git checkout master
    
  5. 將dev分支合併到當前的分支,注意:這裡加上引數 --no-ff

    git merge --no-ff -m "merge with no-ff" dev
    

    這裡 -m後面 “ ” 中間的內容時描述資訊,描述這次提交的原因。

  6. 合併完後檢視分支是怎麼變化的

    git log --graph --pretty=oneline --abbrev-commit
    

分支管理策略

總結:

分支策略

在實際開發中,我們應該按照幾個基本原則進行分支管理:

首先,master分支應該是非常穩定的,也就是僅用來發布新版本,平時不能在上面幹活;

那在哪幹活呢?幹活都在dev分支上,也就是說,dev分支是不穩定的,到某個時候,比如1.0版本釋出時,再把dev分支合併到master上,在master分支釋出1.0版本;

你和你的小夥伴們每個人都在dev分支上幹活,每個人都有自己的分支,時不時地往dev分支上合併就可以了。

所以,團隊合作的分支看起來就像這樣:

Git分支開發

Git分支十分強大,在團隊開發中應該充分應用。

合併分支時,加上--no-ff引數就可以用普通模式合併,合併後的歷史有分支,能看出來曾經做過合併,而fast forward

合併就看不出來曾經做過合併。