[英]How to find local git branches that have been deleted from master
在我們的工作流程中,已將生產就緒的開發分支推送到遠程跟蹤存儲庫,在此將它們合並到主分支中。 測試通過后,將刪除該分支。
我一直很想刪除那些開發分支的本地版本,所以現在我有很多本地分支,它們在原始位置沒有對應的分支。
有沒有一種快速的方法來查找我的存儲庫中的哪些分支已從遠程存儲庫中刪除?
假設原始發布者意味着他想刪除refs/heads
下的本地分支,而不是refs/remotes/origin
下的遠程跟蹤分支,然后查找已經合並到origin/master
分支,只需使用以下命令:
# Fetch latest copy of origin/master
$ git fetch origin
# Find merged branches
$ git branch --merged origin/master
輸出將顯示已合並到origin/master
分支,因此可以安全地使用git branch -d <branch>
刪除。 來自git branch
的官方Linux Kernel Git文檔 :
“ --merged”用於查找可以安全刪除的所有分支,因為這些分支完全由HEAD包含。
另一方面,如果原始發布者表示他想刪除自己的遠程跟蹤分支,則只需將-p
或--prune
標志傳遞給git fetch
:
$ git fetch -p origin
來自git fetch
的官方Linux Kernel Git文檔 :
提取后,刪除遠程上不再存在的所有遠程跟蹤分支。
git fetch -p
從手冊中:
-p,--prune提取后,刪除所有不再存在於遠程上的遠程跟蹤分支。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.