如何忽略Git pull上的以下错误消息?
您对以下文件的本地更改将被合并覆盖
如果我想覆盖它们怎么办?
我试过像git pull-f这样的方法,但没有任何效果。
要明确的是,我只想覆盖特定的更改,而不是所有更改。
如何忽略Git pull上的以下错误消息?
您对以下文件的本地更改将被合并覆盖
如果我想覆盖它们怎么办?
我试过像git pull-f这样的方法,但没有任何效果。
要明确的是,我只想覆盖特定的更改,而不是所有更改。
当前回答
对于Pycharm,您可以执行Git-->Revert,然后执行pull。
其他回答
如果您想从工作副本中删除所有本地更改(包括未被git跟踪的文件),只需将其隐藏:
git stash push --include-untracked
如果你不再需要它们,你现在可以放下这些东西:
git stash drop
如果您不想隐藏已经暂存的更改(例如使用gitadd),那么添加选项--keep-index。然而,请注意,如果这些阶段性的更改与上游的更改发生冲突,这仍然会阻止合并。
如果您只想覆盖本地更改的特定部分,有两种可能:
提交您不想覆盖的所有内容,其余部分使用上面的方法。对于要覆盖的更改,请使用git checkout path/to/file/to/revert。确保文件未通过git reset HEAD path/to/file/to/revert暂存。
这个问题是因为您在本地对文件进行了更改,并且Git存储库中存在相同的文件,因此在拉/推之前,您需要隐藏本地更改:
要覆盖单个文件的本地更改,请执行以下操作:
git reset file/to/overwrite
git checkout file/to/overwrite
要覆盖所有本地更改(所有文件中的更改):
git stash
git pull
git stash pop
此外,此问题可能是因为您所在的分支未与主分支合并。
如果你想覆盖特定的更改,你需要一些方法告诉它你想忘记哪些更改。
您可以尝试使用gitstash-patch选择性地隐藏您想要放弃的更改,然后使用gitstash drop删除该更改。然后,您可以按正常方式拉入远程更改并合并它们。
您可以将其用于覆盖文件
git checkout file_to_overwrite
如果该错误是由于行尾,
git add
git checkout mybranch
将起作用。我真的不知道为什么它会起作用。