我已經用「git checkout -b mybranch」創建了分支。似乎出現了一些問題,現在我無法使用「git branch -D mybranch」將其刪除。它說:錯誤:分支'mybranch'找不到。在git中刪除破損的分支
回答
如果git branch -D
確實無法正常工作,那麼您唯一的選擇是對其進行旁路並自己編輯git check-out的狀態。你應該去你退房(其中.git
目錄)和
- 編輯
.git/packed-refs
的根目錄下;如果您看到有分行名稱的行,請將其刪除 - 請在
.git/refs/heads
中查看以分行名稱命名的文件;如果你看到一個,刪除它
你顯然不需要刪除一個不存在的分支。使用git branch
可查看分支機構列表,如果分支機構不在該分支機構中,則不存在分支機構,並且您不需要刪除分支機構。否則,請確保正確輸入名稱,git branch -D
應該可以正常工作。
儘管如此,你不需要關心很多可能仍然存在但是無法訪問的分支。 Git中的分支實際上只是簡單的40個字節的文件,所以不需要擔心。
也可以嘗試'git branch -a'確保你沒有意外地將分支推送到遠程倉庫。如果你有,你可以閱讀說明如何刪除該分支[這裏](http://gitready.com/beginner/2009/02/02/push-and-delete-branches.html) – Shahbaz
除非你當然可以因爲一個破損/被刪除的分支仍然處於打包狀態,所以不會推送。 – steviesama
在後面看到一個破舊的分支參考文件堵塞了git客戶端,這仍然是一種痛苦。沒人願意。很顯然,這個傢伙正試圖刪除一個使用git分支的「出現」存在的分支。 –
我用git update-ref -d refs/heads/<branch name>
來解決這個問題。據推測,這與Rup在所選答案中提出的建議相同,只是通過Git的CLI接口。
我有同樣的問題。無論何時執行git branch
命令,分支都在分支列表中,但我無法刪除它。
在我的案例中的解決方案很簡單,有點意外:我檢查了破損的分支git checkout broken_branch
(是的,它的工作),然後我檢查出主人和...再次執行git branch -D broken_branch
。
如果分支名稱中包含它需要被引用的特殊字符:
$ git branch -D 'ENH-Adding-unit-``julian``-to-``to_datetime``'
我有同樣的問題git branch -d <branch_name>
不工作,我並沒有發現任何在.git/packed-refs
和.git/refs/heads
但我
.git/refs/remotes/origin
帶有我無法在本地以及遠程刪除的分支的名稱。 但刪除後,我想刪除它不顯示在本地的branch_name
文件。
要刪除它遠程使用
git fetch -p origin
的-p選項--prune
告訴讀取前,刪除任何遠程跟蹤引用該遙控器上不再存在。 然後使用命令
git push origin :<branch_name_you_was_unable_to_delete>
在遠程刪除。
你就完成了。:)
- 1. 在Git中刪除一個「基」分支
- 2. 如何在git中刪除分支
- 3. 刪除50個Git分支?
- 4. Git - 如何刪除分支?
- 5. Git:不要刪除分支?
- 6. 如何刪除Netbeans中的git分支?
- 7. 刪除git中的衝突分支
- 8. 何時刪除Git中的分支?
- 9. 如何從git中的多分支合併中刪除分支?
- 10. 刪除/ refs/heads/review/*在git中刪除分支是否安全?
- 11. 何時從Git中刪除分支?
- 12. 刪除Git修訂的一個分支
- 13. 刪除命名錯誤的git分支
- 14. 我可以刪除舊的git分支
- 15. git:刪除奇怪的遠程分支
- 16. git svn保存已刪除的分支
- 17. 刪除已經承諾的git分支
- 18. git遠程分支已刪除,但仍出現在'分支-a'
- 19. 刪除一個破損的postgreSQL表
- 20. Git刪除TFS git倉庫中的遠程分支
- 21. 還原刪除分支時刪除的git上的文件
- 22. 如何從git分支刪除文件
- 23. 如何刪除git zombie分支?
- 24. Git分支刪除警告 - 怎麼辦?
- 25. Git:刪除-f和--force分支
- 26. Git撤消本地分支刪除
- 27. 如何用TortoiseGit刪除Git分支
- 28. Git:刪除或替換主分支
- 29. 刪除git遠程分支提交
- 30. 使用JGit刪除遠程Git分支
這是一個愚蠢的問題:你怎麼知道它還沒有被刪除,仍然存在? – bdares
你可以在'git branch'中看到你的分支,或者在'.git/packed-refs'或'.git/refs/heads'中看到你的分支嗎? – Rup
是的,我看到我的分支在git分支 –