从Git远程服务器拉出时,使用远程更改解决冲突
我试图从我的GitHub仓库中将代码拖到我的服务器上,但由于合并冲突,pull仍然失败。 我不想保留自上次拉出后本地服务器上可能发生的任何更改。
那么有没有办法让Git能够用GitHub中的任何版本来覆盖,而不是打扰到冲突?
如果你真的想放弃你在本地创建的提交,即再也不会在历史中提交它们,那么你就不会问如何拉取合并,而且你不需要合并。 你所需要做的就是这样:
# fetch from the default remote, origin
git fetch
# reset your current branch (master) to origin's master
git reset --hard origin/master
我个人建议首先在当前的HEAD上创建一个备份分支,这样如果你意识到这是一个糟糕的主意,那么你并没有失去它的踪迹。
另一方面,如果您希望保留这些提交并使其看起来好像与原始合并一样,并使合并仅保留来自原始版本的版本,则可以使用ours
合并策略:
# fetch from the default remote, origin
git fetch
# create a branch at your current master
git branch old-master
# reset to origin's master
git reset --hard origin/master
# merge your old master, keeping "our" (origin/master's) content
git merge -s ours old-master
您可以使用nvm指向的重复链接中的答案。
或者,您可以通过使用其更改来解决冲突(但如果它们不与远程版本冲突,则可能会保留一些更改):
git pull -s recursive -X theirs
链接地址: http://www.djcxy.com/p/7823.html
上一篇: Resolve conflicts using remote changes when pulling from Git remote