我已经完成了其中一个分支的工作并创建了 pull 请求。这是在 CR 中。 我 checkout 了另一个分支,但要使用该功能,我需要 merge 第一个分支的更改。 在审查和 merge 并开始处理其他事情之前,有什么方法可以将我在第一个分支中所做的更改带到另一个分支中?
明确地说:我知道 CR 之后可能会有变化,但仍然值得开始研究其他功能。
最佳答案
您可以从 origin/main
创建另一个分支,和 git cherry-pick
您需要从当前 CR 中的功能分支获取提交( or commits )(我想是“代码审查”)。
最佳实践是,当您想要创建 PR 时,一旦第一个分支被接受并 merge 到 origin/main
,重新设置你的第二个分支:
- 在第一个分支之上:这样,您精心挑选的提交将从您自己的分支中消失(因为 Git 会检测到它们已经存在于第一个分支中)
- 在更新的
origin/main
之上.
git rebase --onto origin/main firstBranch secondBranch
您将在第二次 rebase 后创建 PR,因为这意味着您的第二个分支将在目标 origin/main
之上进行本地编译/测试。此时,该分支已经包含第一个 merge 分支。
关于git - 在 merge 到 master 之前我如何在其他分支上工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73921864/