2017-02-15 69 views
0

TL; DR
如何告訴Git完全忽略我不關心的遠程分支?如何告訴Git忽略遠程開發分支時出錯的錯誤

詳細

我在一個內部的Git倉庫舉辦一個非常大的項目。在我的一個本地克隆中,我的主分支正在跟蹤原始的遠程主設備。對於這個特定的克隆,我不關心除了主人之外的任何東西。然而,當我發出git pull,我有時會看到:

error: cannot lock ref 
'refs/remotes/origin/<branch>': is at <hash> but expected <other hash> 

哪裏<branch>是一些素不相識的人的發展的分支,我不關心,我的主分支最終沒有得到完全更新。我已經成功使用git gc --prune=nowgit remote prune origin,正如this SO answer中所建議的那樣,但是現在已經發生了多次,我不想繼續手動修復它。我也可以使用git pull origin master:master,但我寧願只使用git pull

我不在乎這個分支,永遠不會。我從來沒有簽出除了主任何在這個克隆,而不是在跟蹤別的:

m:\<path>\> git branch 
* master 

我怎麼能告訴混帳停止做它做背景的任何追蹤信息時,我只是想拉主?

附註
我們的團隊對Git的舉動是最近的,我們仍然在我們的工作流程制定出扭結。我不知道其他開發者是否在做一些奇怪的事情,但我並不在意 - 我想知道我該如何告訴Git,「無論其他分支發生了什麼事,只要拿出我問的那個當我說pull。「

回答

2

通知Git只取主分支,而不是所有的分支:

git config remote.origin.fetch +refs/heads/master:refs/remotes/origin/master