肯定有关于此的帖子,但我实际上做了一个提交,因为我认为这是正确的做法。
所以,我有两个存储库,一个开发,一个生产。我不得不在生产中编辑一些东西,因为它是一个紧急的错误修复,现在我有三个文件,它们在生产中比在开发中更新。
我将这三个文件提交到生产环境并尝试 pull ,但它告诉我存在 merge 错误。我尝试将新文件复制并粘贴到开发服务器并重试整个过程,但没有成功。现在我确定我需要的是开发(因为我复制并粘贴到其中)并提交了,那么我如何提取和覆盖冲突文件?
---- 跟进@Seths 回复
好吧,我想我确实需要改写我的问题:)
我有三个存储库。一种开发,一种在 GitHub 中,一种生产。
通常为了更新生产,我只是从开发推送到 GitHub,git pull origin master
(从 GitHub 到生产),并且它有效。
不幸的是,我在没有存储的情况下更改了生产文件。尝试 pull 时如何强制覆盖而不是 merge ?
最佳答案
如果你想用远程分支 origin/foo 的内容完全替换本地分支 foo:
git fetch origin
git checkout foo
git reset --hard origin/foo
如果您想做其他事情,请改写您的问题。但是,我可能会将生产 Git 存储库添加为远程,然后 merge 实时更改,而不是您尝试的任何内容。
关于git - 执行 Git pull 以覆盖本地更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6257539/