如何告诉Git在拉取master时忽略远程开发分支的错误

时间:2017-02-15 23:25:54

标签: git

TL; DR
我怎么能告诉Git完全忽略我不关心的远程分支?

详情

我正在一个内部Git存储库中托管的非常大的项目中工作。在我的一个本地克隆上,我的主分支正在跟踪远程主控源。对于这个特殊的克隆,我不关心除了主人之外的任何东西。但是,当我发出git pull时,我有时会看到:

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

<branch>是一个我不关心的随机人员开发分支,而我的主分支最终没有完全更新。我已根据this SO answer中的建议成功使用了git gc --prune=nowgit remote prune origin,但现在已多次发生,我不想手动修复它。我也可以使用git pull origin master:master,但我更喜欢使用git pull

我不关心这个分支,永远不会。我从来没有在这个克隆中检查过除了master之外的任何东西,而且我没有跟踪其他任何东西:

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

当我想拉主人时,我怎么能告诉git停止做他在后台做的跟踪信息呢?

附加说明
我们团队最近搬到Git,我们仍然在工作流程中解决问题。我不知道其他开发人员是否做了一些奇怪的事情,但我并不在乎 - 我想知道如何告诉Git,&#34;无论其他分支机构发生了什么,当我说pull时,只需拉出我问的那个。&#34;

1 个答案:

答案 0 :(得分:2)

告诉git只获取master分支而不是所有分支:

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