合并一个分支的提交,以基于另一个分支
Merging a commit off of one branch, to be based off of another branch
我的项目有一个 master
分支和一个 staging
分支。我刚刚推了一个单独的 develop
分支,它位于 master
之外,但我需要它离开 staging
.
有没有什么方法可以让 develop
分支比 master 提前 1 次提交,然后让它脱离我的暂存 branch
?所以最终它只会在 staging
?
之前提交一次
我可能会建议在 staging
:
上对 develop
做一个简单的 rebase
git checkout develop
git rebase staging
这将重播 develop
中的所有提交,这些提交发生在 之后 staging
从 master
直接在staging
分支。但这也可能会在 staging
之上播放某些 master
提交,这听起来不像你想要的那样。
因此,如果您想做的只是在 staging
之上播放单个提交并将其设为 develop
分支,您可以尝试以下操作:
git checkout staging
git checkout -b new_develop
git cherry-pick <SHA-1 of single commit>
然后删除旧的develop
分支,并将new_develop
重命名为develop
:
git branch -d develop
git branch -m new_develop develop
我的项目有一个 master
分支和一个 staging
分支。我刚刚推了一个单独的 develop
分支,它位于 master
之外,但我需要它离开 staging
.
有没有什么方法可以让 develop
分支比 master 提前 1 次提交,然后让它脱离我的暂存 branch
?所以最终它只会在 staging
?
我可能会建议在 staging
:
develop
做一个简单的 rebase
git checkout develop
git rebase staging
这将重播 develop
中的所有提交,这些提交发生在 之后 staging
从 master
直接在staging
分支。但这也可能会在 staging
之上播放某些 master
提交,这听起来不像你想要的那样。
因此,如果您想做的只是在 staging
之上播放单个提交并将其设为 develop
分支,您可以尝试以下操作:
git checkout staging
git checkout -b new_develop
git cherry-pick <SHA-1 of single commit>
然后删除旧的develop
分支,并将new_develop
重命名为develop
:
git branch -d develop
git branch -m new_develop develop