Can';如果文件不断更改,则无法从git中提取
我已经在本地和远程Can';如果文件不断更改,则无法从git中提取,git,Git,我已经在本地和远程.gitignore文件中添加了resources/xml error: Your local changes to the following files would be overwritten by merge: resources/xml/analysis.xml 我的本地和远程设备都是这样的: /vendor/ .env /resources/xml/ 我无法提取任何东西,甚至隐藏analysis.xml也没有帮助,因为在隐藏1秒钟后,它又变了 更新 从缓存中删除
.gitignore
文件中添加了resources/xml
error: Your local changes to the following files would be overwritten by merge:
resources/xml/analysis.xml
我的本地和远程设备都是这样的:
/vendor/
.env
/resources/xml/
我无法提取任何东西,甚至隐藏analysis.xml
也没有帮助,因为在隐藏1秒钟后,它又变了
更新
从缓存中删除并从远程服务器中删除冲突文件后
CONFLICT (modify/delete): resources/xml/analysis.xml deleted in
d58b27586850da80e85119be6005fbe538a5e8ab and modified in HEAD.
Version HEAD of resources/xml/analysis.xml left in tree.
Automatic merge failed; fix conflicts and then commit the result.
在此之后,我需要另一个git-rm-resources/xml/analysis.xml
,现在我可以拉了。
谢谢尽管文件在
.gitignore
中输入,但Git似乎正在跟踪该文件
当您之前将文件添加到Git时会发生这种情况,之后只添加到gitignore
:当您忽略文件时,Git不会从其索引中删除文件,而只是不会将其添加到索引中
您需要从Git索引(但不是从硬盘驱动器)中删除该文件:
或
当有其他文件要删除时
之后,Git将不知道该文件,并且将在将来被忽略。看起来该文件正在被Git跟踪,尽管它在
.gitignore
中有条目
当您之前将文件添加到Git时会发生这种情况,之后只添加到gitignore
:当您忽略文件时,Git不会从其索引中删除文件,而只是不会将其添加到索引中
您需要从Git索引(但不是从硬盘驱动器)中删除该文件:
或
当有其他文件要删除时
之后,Git将不知道该文件,并且在将来将被忽略。这里发生的事情是Git保护您不丢失该文件中的更改 您可能已将该文件添加到
.gitignore
中,但这并不能告诉Git在跟踪该文件时停止关注它。因此,当您有本地更改时,拉/合并会导致更新文件,Git会停止,这样您就不会丢失这些本地更改
如果您想让Git真正忘记该文件,您必须将其从存储库中删除,否则Git将不关心.gitignore
中关于该文件的内容。要从存储库中删除文件,而不删除物理文件,可以执行以下操作:
git rm --cached resources/xml/analysis.xml
然后你必须做出改变。只有从那时起,Git才会真正忽略该文件
注意,这并不一定会阻止Git保护您的本地文件。如果您最终合并了一个提交,其中该文件仍然存在,并且已被更改,那么Git可能会再次告诉您,该文件将被触动。因此,在这些情况下,您可能需要临时重命名该文件以保护您的本地更改
注意,在这些情况下检查
git status
的输出总是一个好主意。它将告诉您,在您最初的情况下,Git仍然知道该文件,并且它有一些未提交的更改。这里发生的事情是Git保护您不丢失该文件中的更改
您可能已将该文件添加到.gitignore
中,但这并不能告诉Git在跟踪该文件时停止关注它。因此,当您有本地更改时,拉/合并会导致更新文件,Git会停止,这样您就不会丢失这些本地更改
如果您想让Git真正忘记该文件,您必须将其从存储库中删除,否则Git将不关心.gitignore
中关于该文件的内容。要从存储库中删除文件,而不删除物理文件,可以执行以下操作:
git rm --cached resources/xml/analysis.xml
然后你必须做出改变。只有从那时起,Git才会真正忽略该文件
注意,这并不一定会阻止Git保护您的本地文件。如果您最终合并了一个提交,其中该文件仍然存在,并且已被更改,那么Git可能会再次告诉您,该文件将被触动。因此,在这些情况下,您可能需要临时重命名该文件以保护您的本地更改
注意,在这些情况下检查
git status
的输出总是一个好主意。它将告诉您,在您最初的情况下,Git仍然知道该文件,并且该文件有一些未提交的更改。在将该文件添加到.gitignore
之前,您是否已将其添加到Git?标题应改为“如何停止进程不断更改我的.gitignore?”;)问题是,Git需要在获取远程版本(并应用本地版本)后将文件与远程更改合并。您真的需要本地更改(由某个进程进行)吗?这不是一个行尾问题。能否请您添加解决方案作为答案,并在明天进行检查?您是否已将文件添加到Git,然后再将其添加到。gitignore
?标题应改为“如何停止进程不断更改我的.gitignore?”;)问题是,Git需要在获取远程版本(并应用本地版本)后将文件与远程更改合并。您真的需要本地更改(通过某些流程进行)吗?这不是一个换行问题。请添加您的解决方案作为答案,并在明天检查它好吗?:)我正在测试它。现在有一些冲突:)我正在测试它。现在有一些冲突
git rm --cached resources/xml/analysis.xml