当我尝试从原点拉动时,我会发现这个错误:
error: Your local changes to the following files would be overwritten by merge:
filepath/file
Please, commit your changes or stash them before you can merge.
Aborting
但是文件路径/文件位于git ignore文件中,因此当我键入git status
时,我没有看到任何可以恢复的更改。
答案 0 :(得分:1)
由于我不介意丢失对此文件的更改,我删除了该文件,然后git reset HEAD filepath/file
然后git checkout filepath/file
。这有效。
答案 1 :(得分:0)
听起来你需要运行
git rm --cached filepath/file
这将使git“忘记”该文件,将已经跟踪的文件添加到.gitignore
将不会删除它,直到您也运行该命令。
(注意这不会激活rm
文件)
答案 2 :(得分:0)
由于该文件位于.gitignore中,因此您不会看到任何更改,并且基本上会成为未跟踪的文件。作为一种防御措施,Git会阻止覆盖变更。 (由于所做的任何更改都无法恢复)。
我会暂时将其从.gitignore文件中删除以查看更改。存储或删除修改,然后执行git pull
。然后更改.gitignore以再次忽略该文件。
答案 3 :(得分:-3)
当我发生这样的事情时,我用git做的是打开控制台并开始编写你可以输入的所有命令,git commit,git add -a,git push,然后再以所有这些以防万一,通常它开始工作之后