Git看到重复的修改文件

时间:2015-06-15 15:47:43

标签: git git-add git-status

在我的存储库中有一个文件(总是那个)总是给我带来麻烦 我正在使用coffeescript并使用grunt任务生成js 有几次git status告诉我这个文件已被修改,需要添加。问题是git看到此文件重复
enter image description here

好的。所以我尝试用git add :/添加所有内容,并添加所有文件,包括AreaChart.js的一份副本,而另一份保留modified并且未分级。如果我手动尝试checkoutadd,则不会发生任何事情,其状态仍为modified且未分期。

这是一个git bug吗?我该如何解决这个问题?

修改
实际上git看到同一个文件有两个不同的文件名,即AreaChart.jsAreachart.js 如果我ls我只看到它应该是AreaChart.js(大写C)。

提示:
如果我添加AreaChart.js(大写C) - > git添加Areachart.js(小写c
如果我添加Areachart.js(小写c) - > git添加Areachart.js(小写c

EDIT2

  1. 我发现存储库中存在这两个文件
  2. 令我惊讶的是,我发现我的文件系统(mac)不区分大小写,所以如果我touch testtouch Test只创建了一个文件(或者两者都可以,但我只能看到其中一个)
  3. 输出git config core.ignorecase表示true

2 个答案:

答案 0 :(得分:3)

仔细看看

AreaChart.js 

Areachart.js

是不同的文件。一个有大写C,另一个有小写c字符。

由于Git区分大小写,并且您的文件系统是不敏感的,因此您只能在文件系统上看到其中一个。如果您只想在Git中使用一个,则应使用git rm --cached Areachart.js删除另一个,并确保通过git add AreaChart.js添加更新。

答案 1 :(得分:1)

如果对不区分大小写的文件系统感到困惑。尝试:

git mv --force Areachart.js AreaChart.js