1. 程式人生 > >git 因線上分支名重復導致無法拉取代碼

git 因線上分支名重復導致無法拉取代碼

IT 無法 pan 其中 -a remote 就是 重復 異常

有時 git pull 或 git fetch 時發現 git 報了個異常,說法像是無法將線上某個分支與本地分支合並,由於分支是...(很長的hash)但是分支卻是...(很長的hash)

仔細查查後發現是 git 遠端出現了重復的分支名導致的,故此刪除掉重復的那個不需要的遠端分支即可

git push origin :origin/branchName

其作用是提交一個空的分支到遠端的 branchName 的分支,由於分支為空,git 便將其刪除了。

然後發現了一同開發的隊友出問題了,明明遠端的分支已經刪除了,但是我們的隊友由於在分支有問題期間也進行過拉取代碼或同步代碼的操作,導致其本地的 git 倉庫中記錄著重復分支名的信息,因此每當拉取代碼信息時就會被報重復分支名的問題給打斷無法繼續,此時我們使用 git branch -a

可以看到所有的分支信息,包括遠端的分支信息,在其中就可以看到有重復分支名的分支,可明明遠端分支已經被我刪除了可隊友那卻依然還是這樣,這時候就是得更新下遠端分支信息了,先僅查看下遠端分支信息(可看可不看) git remote show origin 緊接著使用 git remote prune origin 來移除已經不存在的所有分支。

PS:由於遇到這個問題時忘記截圖了,所以只好記文字說明了。之後再遇到的話再截圖補上。

git 因線上分支名重復導致無法拉取代碼