怎么把远程分支upstream/dev 上的提交内容直接合并到origin/dev上?

怎么把远程分支upstream/dev 上的提交内容直接合并到origin/dev上?

D:\project\large-screen\large-screen>git status
On branch dev
Your branch is up to date with 'upstream/dev'.

nothing to commit, working tree clean
D:\project\large-screen\large-screen>git remote
origin
upstream
阅读 4.9k
2 个回答

实现的方式有很多,下面给出一种比较容易理解的吧。

# 获取两个远程上 dev 分支的最新内容
$ git fetch upstream dev
$ git fetch origin dev

# 基于 origin/dev 创建切换到你本地的临时分支 temp 上,以此确保它的内容和 origin/dev 是一致的
$ git checkout -b temp origin/dev

# 合并 upstream 里 dev 分支的内容到当前 temp 分支
$ git merge upstream/dev

# 现在本地的 temp 分支包含了两个远程仓库 dev 分支的最新内容,可以直接推送到远端(或者提交 merge)
$ git push -f origin temp:dev

# 删除临时分支
$ git branch -D temp

当然,如果知道你要应用的提交,你还可以使用 git cherry-pick [options...] <commit>...,理解它或许可以更方便地解决你的问题。

直接merge就行

推荐问题