Git显示状态干净,但checkout抱怨覆盖未跟踪的文件

时间:2017-09-05 04:04:47

标签: git case-sensitive

首先:

git status 

结果很干净。

其次

 git checkout fb/booking_interaction
 error: The following untracked working tree files would be overwritten by checkout:
 web/sites/all/modules/contrib/ckeditor/images/buttons/blockQuote.png

第三,尝试清除未跟踪的文件。在指定的目录中:

git clean -f .

同样,没有任何更改和git checkout失败。

有什么问题?

1 个答案:

答案 0 :(得分:3)

问题是由于文件系统的区分大小写。

看问题。文件列表:

> ls
imageButton.png
imagebutton.png

检查git是否设置为区分大小写

> vi .git/config
ignorecase = false

此机器区分大小写。改变的机器也一定是。

> git log
removeformat.png - renamed from removeFormat.png. 

由于我更改了ignorecase,git status现在显示更改。

> git status

Untracked files:
(use "git add <file>..." to include in what will be committed)

blockQuote.png
bulletedList.png

Git clean也按预期工作

git clean -f .
Removing blockQuote.png
Removing bulletedList.png

我可以毫无问题地检查其他分支。