如何忽略Git pull上的以下错误消息?

您对以下文件的本地更改将被合并覆盖

如果我想覆盖它们怎么办?

我试过像git pull-f这样的方法,但没有任何效果。

要明确的是,我只想覆盖特定的更改,而不是所有更改。


当前回答

在拉取之前,您必须提交所有尚未提交的文件,这样您就不会从AS收到该消息。

其他回答

git pull --rebase --autostash

-r、 --rebase[=false|true|合并|保留|交互式]如果为true,则在提取后的上游分支。如果有与上游相对应的远程跟踪分支

--autostash,--无autostash在开始重新基础之前,如果需要,并在完成后应用隐藏条目


我不知道为什么这个问题还没有答案,但正如你们所看到的,解决方法很简单。这里的所有答案都是相同的:删除/保存本地更改并应用到上游,然后(如果保存)在顶部应用本地更改。

git pull--rebase--autostash一步一步地做什么:

1. your local changes saved by `--autostash`
2. your local commits saved by `--rebase`
3. commits from upstream applied to your branch
4. your local commits are restored on top of upstream
5. your local changes are restored to working directory

我的案子(可能也是你的):

我有本地更改(工作目录中的更改):

当我尝试进行远程更改时,我收到错误:

这些更改与本地更改不相交:

因此,当我拉动--rebase--autostash时,保存并应用的本地更改不会自动出现任何问题

现在我的本地变化有点低:

好了,在其他两个答案的帮助下,我提出了一个直接的解决方案:

git checkout HEAD^ file/to/overwrite
git pull

如果要在服务器上保留生产更改,只需合并到新的配置项中即可。处理方法如下:

git stash
git pull
git stash pop

也许你没有执行所有操作。你可以知道下一步可以做什么。

git reset—hard&&git clean-df

警告:这将重置和删除所有未跟踪的文件。

如果要推送所有文件,请尝试此操作git push—强制使用租赁原始主机