Git 重置困难的问题

Git 重置困难的问题,git,Git,我在我的存储库上工作了一段时间,但最近收到一个文件的奇怪状态,我将其命名为file.py(我还将当前分支命名为my_branch)。我不确定是什么让GIT处于这种状态,但我似乎可以修复它(而不必重新克隆整个项目)。GIT现在似乎与我的更改完全混淆,拒绝恢复到旧的更改 $ rm file.py $ git reset --hard HEAD is now at 42d1b0b Documentation for various modules. $ ls | grep file.py file.p

我在我的存储库上工作了一段时间,但最近收到一个文件的奇怪状态,我将其命名为
file.py
(我还将当前分支命名为
my_branch
)。我不确定是什么让GIT处于这种状态,但我似乎可以修复它(而不必重新克隆整个项目)。GIT现在似乎与我的更改完全混淆,拒绝恢复到旧的更改

$ rm file.py
$ git reset --hard
HEAD is now at 42d1b0b Documentation for various modules.
$ ls | grep file.py
file.py
$ git status
On branch my_branch
Your branch is up-to-date with 'origin/my_branch'.

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

    modified:   File.py

no changes added to commit (use "git add" and/or "git commit -a")
它又来了!运行
git diff file.py
也会产生差异。但区别与我上次提交的相同。尝试添加文件也没有帮助,因为它会自动忽略我的请求


有什么建议吗?

备份该文件并使用
git rm file.py
将其删除

然后将忽略选项添加到git回购中:

git config core.ignorecase true

你尝试过git签出——File.py吗?@mattpilleggi是的,但不幸的是,它没有做任何事情。这很奇怪。对file.py进行备份,做一个git rm file.py并将其添加回怎么样?@mattpillegi我执行了一个
git rm file.py
,有趣的是,它同时删除了
file.py
file.py
。我提交了它,并在另一次提交中再次添加了该文件,这似乎解决了问题。谢谢很好,很高兴成功了。听起来像是个案例问题。你也许可以在将来通过强迫git忽略这个案例来避免它,我自己也没有遇到过,所以我不能说
git config core.ignorecase true