![](/img/trans.png)
[英]I have a lot of partitions in my laptop and I don't know where to install Linux
[英]Git : remove totally nonexistent file from… well… from I don't know where
我在Windows上使用git。 我曾经添加一个文件,然后以大写字母更改了一个字母,然后再次以新名称添加了它。 从那时起,我始终拥有两个文件(一次使用大写,一次不使用)。
myFile.ext
myfile.ext
Git始终将其解释为两个不同的文件(因为它配置为区分大小写),但实际上是同一文件,因此它两次跟踪该文件,每个名称下一次。
我现在已经从仓库中删除了大写文件
git rm --cached myFile.ext
所以现在我的文件只有一个轨道,这一切都很好。
myfile.ext
问题是,如果我想对旧的提交进行结帐,git说:
错误:以下未跟踪的工作树文件将被签出覆盖:myFile.ext请先移动或删除它们,然后才能切换分支。 堕胎
但是,我对此文件无能为力,因为它既不在工作树中也不在索引中。 我试图移动文件,删除myfile.ext
文件,然后再次添加它(隐藏),但没有任何效果。 myFile.ext
不在git status
显示,也不在gitignore中。
我该如何解决?
也许最好的方法是使用以下命令从历史记录中删除myFile.ext:
git filter-branch --index-filter 'git rm --cached --ignore-unmatch myFile.ext' HEAD
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.