我试图检出一个分支删除文件,但不断收到此错误:无法从工作目录
error: Your local changes to the following files would be overwritten by checkout:
file.txt
Please, commit your changes or stash them before you can switch branches.
Aborting
但是:
- 当我
stash
,没有什么变化。 file.txt仍在工作 目录中。 - 当我I
add
该文件,然后stash
,它回到 工作目录。 - 当我I
reset --hard
,没有什么变化。 file.txt仍为工作目录中的 。 - 当我
checkout --
当前 分支,没有什么变化。 file.txt仍然在工作目录中。 - 我甚至试过
git rm -f file.txt
然后stash
。也没有帮助。
在做完所有这些之后,我仍然无法签出不同的分支,因为我被卡在file.txt中。
我该如何解释这里发生了什么?我该如何摆脱file.txt?
我正在使用Windows上的git-scm,如果它很重要。
编辑:git diff --check
显示尾随空白有差异。为什么不能像任何其他文本差异一样对待尾随空白,而是通过不让我reset
或stash
这么奇怪?这种行为是否可配置?
谢谢你的想法,但事实并非如此(没有双关语:)) – 2015-03-24 21:38:32
:D - 文件名或路径中是否有非英文字符? – 2015-03-24 22:23:45
不,所有的字符都属于'[a-zA-Z。]' – 2015-03-24 22:39:16