2016-03-02 320 views
14

當我知道我不會再使用分支時,是否可以關閉或鎖定分支?其實我想關閉一個分支,但我認爲不可能用GIT關閉一個分支。怎麼樣刪除。當我刪除分支時,我的歷史會發生什麼?如何在git中關閉分支

+0

@FarhadFaghihi接受意味着提問者認爲這是對他或她最有幫助的答案,而不是它最受歡迎。 –

回答

18

更新回答

由於@user3159253在這個答案的評論中指出:

混帳垃圾收集未引用,直接或間接地提交,由一個叫引用(分支,標籤等)。這就是爲什麼留下一個凍結分支的引用很重要。


您可以通過歸檔它標記分支的末端,然後刪除該分支。

git tag archive/<branchname> <branchname> 
git branch -d <branchname> 
git checkout master 

分支將被刪除,稍後可以通過簽出標籤並重新創建分支來檢索分支。

git checkout archive/<branchname> 
git checkout -b new_branch_name 

或者更簡單地說:

git checkout -b new_branch_name archive/<branchname> 
+0

爲什麼不'git checkout -b new_branch_name archive/'? – PetSerAl

+0

也是有道理的。 –

+1

我會添加一個解釋,即git垃圾收集未直接或間接地通過命名引用(分支,標籤等)引用的提交。這就是爲什麼留下一個凍結分支的引用很重要。 – user3159253

1

你可以參考git finding unmerged branches地發現,已被合併或不是那些分支。

如果某個分支已合併到其他分支中,則使用follwing命令將其刪除是安全的。

git branch -D branch_name

+2

爲什麼選擇投票?這個答案不正確嗎?刪除已合併到另一個分支的分支是不安全的嗎?爲什麼? – Barzee