軟件開發中,總有無窮無盡的新的功能要不斷添加進來。
添加一個新功能時,你肯定不希望因爲一些實驗性質的代碼,把主分支搞亂了,所以,每添加一個新功能,最好新建一個feature分支,在上面開發,完成後,合併,最後,刪除該feature分支。
現在,你終於接到了一個新任務:開發代號爲Vulcan的新功能,該功能計劃用於下一代星際飛船。
於是準備開發:
$ git checkout -b feature-vulcan
Switched to a new branch 'feature-vulcan'
5分鐘後,開發完畢(其實就新建了一個py,隨便寫個函數)
$ git add vulcan.py
$ git status
On branch feature-vulcan
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
new file: vulcan.py
切回到dev,準備合併
一切順利的話,feature分支和bug分支是類似的,合併,然後刪除。
但是,就在此時,接到上級命令,因經費不足,新功能必須取消!雖然白乾了,但是這個分支還是必須就地銷燬:
$ git branch -d feature-vulcan
error: The branch 'feature-vulcan' is not fully merged.
If you are sure you want to delete it, run 'git branch -D feature-vulcan'.
銷燬失敗。Git友情提醒,feature-vulcan分支還沒有被合併,如果刪除,將丟失掉修改,如果要強行刪除,需要使用命令git branch -D feature-vulcan。現在,強行刪除
$ git branch -D feature-vulcan
Deleted branch feature-vulcan (was 2673b2b).
刪除成功
小結
1、開發一個新的feature最好新建一個分支;
2、如果要丟棄一個沒有合併的分支,可以通過git branch -D 刪除