如何忽略Git pull上的以下错误消息?
您对以下文件的本地更改将被合并覆盖
如果我想覆盖它们怎么办?
我试过像git pull-f这样的方法,但没有任何效果。
要明确的是,我只想覆盖特定的更改,而不是所有更改。
如何忽略Git pull上的以下错误消息?
您对以下文件的本地更改将被合并覆盖
如果我想覆盖它们怎么办?
我试过像git pull-f这样的方法,但没有任何效果。
要明确的是,我只想覆盖特定的更改,而不是所有更改。
当前回答
这里有太多的答案,我不想再添加一个,但以上所有的答案都比它们需要的要笨拙。我必须一直这样做,因为Git似乎变得困惑,并表示我修改了未更改的文件(无法恢复,因为它们没有更改,但我无法拉动,因为它们应该已更改)。到目前为止,我发现最简单、最快的是:
git stash
git stash drop
git pull
注意:本地更改将丢失
其他回答
这个问题是因为您在本地对文件进行了更改,并且Git存储库中存在相同的文件,因此在拉/推之前,您需要隐藏本地更改:
要覆盖单个文件的本地更改,请执行以下操作:
git reset file/to/overwrite
git checkout file/to/overwrite
要覆盖所有本地更改(所有文件中的更改):
git stash
git pull
git stash pop
此外,此问题可能是因为您所在的分支未与主分支合并。
对我来说,这是有效的:-
首先,我清理了所有未跟踪的文件,运行->gitclean-f。数字拉力
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时,保存并应用的本地更改不会自动出现任何问题
现在我的本地变化有点低:
由于您的分支位于xx提交的“origin/dev”之后,因此可以快速转发。请尝试以下命令:
git checkout .
git pullenter code here
希望这能解决你的问题。
试试这个
git fetch --all
git reset --hard origin/master
git pull origin master
对我来说,用力拉