如何忽略有关 Git pull 的以下错误消息?
您对以下文件的本地更改将被合并覆盖
如果我想覆盖它们怎么办?
我已经尝试过git pull -f
类的东西,但是没有任何效果。
需要明确的是,我只想覆盖特定的更改,而不是所有内容。
如果要从工作副本中删除所有本地更改(包括 git 未跟踪的文件),只需将它们存储起来即可:
git stash push --include-untracked
如果您不再需要它们,现在可以删除该存储:
git stash drop
如果您不想隐藏已经上演的更改(例如,使用git add
,则添加选项--keep-index
。但是请注意,如果这些分阶段的更改与上游的更改发生冲突,这仍将阻止合并。
如果只想覆盖本地更改的特定部分,则有两种可能性:
提交所有您不想覆盖的内容,其余使用上面的方法。
使用git checkout path/to/file/to/revert
来覆盖您想要覆盖的更改。确保没有通过git reset HEAD path/to/file/to/revert
。
好的,在其他两个答案的帮助下,我提出了一个直接的解决方案:
git checkout HEAD^ file/to/overwrite
git pull
这适用于我覆盖所有本地更改,并且不需要身份:
git reset --hard
git pull