假设我正在处理一个分支 XYZ,而其他人在主分支中推送了一些更改,我如何获取分支 XYZ 的最新更改?我切换到 dev 分支并获得了最新的拉动,但是当我回到我的分支 XYZ 时,我没有得到我在 Dev 分支中得到的最新更改。
如果你还没有推送你的分支XYZ,假设XYZ是从dev创建的:
git checkout dev
git pull
git checkout XYZ
git rebase dev
这将在更新的开发之上重播您的本地提交。
如果 XYZ 是 alreay 推动的,那么进行简单的合并更为谨慎。
git checkout XYZ
git merge dev
你必须这样做
git checkout xyz
git pull origin xyz
git merge main_branch
您必须将dev
分支合并到分支中XYZ
如下所示:
git checkout dev
git pull origin dev
# to get your branch up to date with the remote
git checkout XYZ
git pull origin XYZ
# to get your branch up to date with the remote
git merge dev
# this will merge your dev branch into your branch XYZ.
# there could be possible "merge conflicts" resolve it.
即使不切换分支也可以这样做。如果 dev 上有很多新的更改,则切换速度很慢。不过要小心 - 在这个过程中,你必须确保你推送了你之前在 dev 上制作的所有本地挂起。
# get latest commit from dev branch whilst still being on XYZ
git fetch origin dev:dev
# merge those changes
git merge dev