軟件開(kāi)發(fā)中,總有無(wú)窮無(wú)盡的新的功能要不斷添加進(jìn)來(lái)。
添加一個(gè)新功能時(shí),你肯定不希望因?yàn)橐恍?shí)驗(yàn)性質(zhì)的代碼,把主分支搞亂了,所以,每添加一個(gè)新功能,最好新建一個(gè)feature分支,在上面開(kāi)發(fā),完成后,合并,最后,刪除該feature分支。
現(xiàn)在,你終于接到了一個(gè)新任務(wù):開(kāi)發(fā)代號(hào)為Vulcan的新功能,該功能計(jì)劃用于下一代星際飛船。
于是準(zhǔn)備開(kāi)發(fā):
$git checkout -b feature-vulcanSwitchedto a new branch'feature-vulcan'
5分鐘后,開(kāi)發(fā)完畢:
$git add vulcan.py$git status# On branch feature-vulcan# Changes to be committed:#? (use "git reset HEAD ..." to unstage)##? ? ? new file:? vulcan.py#$git commit -m"add feature vulcan"[feature-vulcan756d4af] add feature vulcan1file changed,2insertions(+) create mode100644vulcan.py
切回dev,準(zhǔn)備合并:
$git checkout dev
一切順利的話,feature分支和bug分支是類似的,合并,然后刪除。
但是,
就在此時(shí),接到上級(jí)命令,因經(jīng)費(fèi)不足,新功能必須取消!
雖然白干了,但是這個(gè)分支還是必須就地銷毀:
$git branch -d feature-vulcanerror:Thebranch'feature-vulcan'isnotfully merged.Ifyou are sure you want to delete it, run'git branch -D feature-vulcan'.
銷毀失敗。Git友情提醒,feature-vulcan分支還沒(méi)有被合并,如果刪除,將丟失掉修改,如果要強(qiáng)行刪除,需要使用命令git branch -D feature-vulcan。
現(xiàn)在我們強(qiáng)行刪除:
$git branch -Dfeature-vulcanDeletedbranch feature-vulcan (was756d4af).
終于刪除成功!
小結(jié)
開(kāi)發(fā)一個(gè)新feature,最好新建一個(gè)分支;
如果要丟棄一個(gè)沒(méi)有被合并過(guò)的分支,可以通過(guò)git branch -D 強(qiáng)行刪除。