Git fetch反复告诉我有关同一个新分支的信息

时间:2014-12-08 22:19:27

标签: git

在一个特定的回购中,当我跑

git fetch

它完成了它应该做的所有事情,但也报告:

 * [new branch]      Story/abc-123 -> origin/Story/abc-123

每次单次。

如果我运行git branch -r | grep abc-123,它产生:

origin/story/abc-123

请注意,在fetch的输出中,'Story'是大写的,但在分支-r输出中则不是。问题似乎是局部的。我没有这个问题,如果我在其他地方新建一个回购的克隆,但如果我可以避免它,我宁愿不走这条路。

有没有办法让它停止这样做?

1 个答案:

答案 0 :(得分:6)

这里的问题是,与实际遥控器相比,您的./git/refs目录与分支名称的一部分的情况不同。即,git branch认为分支是小写的:

$git branch 
...
origin/story/abc-123
... 

但你的refs副本认为故事目录是大写的:

$ls .git/refs/remotes/origin
...
Story
...

显然你可以删除整个refs目录,然后git会重新生成它,但因为我是一个懦夫,我只是通过重命名有问题的目录来修复它:

mv .git/refs/remotes/origin/Story .git/refs/remotes/origin/story