所以有时我在一个分支上工作,我想提取自分支创建以来在 origin/master 上所做的更改。只是在做git merge master
通常是不够的,因为本地主机可能没有远程主机的更改,所以我发现自己必须这样做:
# save any uncommitted changes (if there are any)
git stash
# update master first:
git checkout master
git pull
# back to where we were:
git checkout <previous branch>
git stash pop # omit if git stash not done
# and finally the actual merge:
git merge master
当然有更短的方法,只需一两个 git 命令?
一条命令:
git pull origin master:master
让我把它分开并解释一下。git pull master:master
相当于
git fetch origin master:master
git merge master
git fetch origin master:master
意思是:从远程获取新的提交origin
branch master
并更新本地分支master
指向与远程相同的提交master
。这就是你所做的
git checkout master
git pull
git checkout <previous branch>
但速度更快(无需进行两次结账)。
如果您需要隐藏添加--autostash
:
git pull --autostash origin master:master
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)