Git只从分支推送一个提交



我在master中有一个提交C1。我在那之后进行了分支,并在分支中提交了C2。现在我想推只提交C2master .(C1还没有准备好被推)如何做到这一点…

    C2(branch)
  /
|
|
C1 (master)

谢谢. .

你可以使用git cherry-pick指定你想要合并的提交id

git cherry-pick C2 

将只合并提交C2到主分支

首先,你的措辞有点令人困惑:当谈论push时,总是涉及到远程。所以你不是把git pushbranch变成master,而是变成origin/master

如果我理解正确的话,下面是如何将一个提交从分支branch推送到origin/master的方法

从上次推送的版本中检查新的本地分支tmp-for-pushing:

git fetch origin && git checkout -b tmp-for-pushing origin/master

选择C2到这个分支:

git cherry-pick C2

Publish this single commit:

git push origin tmp-for-pushing:master

到目前为止,您已经更新了您的遥控器,但是我们需要再次清理。

再次Checkout master:

git checkout master

扔掉你的临时分支

git branch -D tmp-for-pushing

将主机重置到已更新的origin/master

git fetch origin && git rebase origin/master

将C2重置到更新后的master上(如果C2是唯一的提交,C2将在此之后等于master):

git checkout branch && git rebase master

相关内容

  • 没有找到相关文章

最新更新