Git 重新调整 2 个分支订单

Git Rebasing 2 branches order

我有2个分支

myBranch

devBranch

如果我想使用 rebase 从 devBranch 添加提交到 myBranch 之上,那只是

git checkout myBranch

git rebase devBranch 

我知道如果我使用 git 合并,它会将 devBranch 合并到 myBranch,我只是想知道这是否也适用于 rebase。

会的。

您有 3 个选项(据我所知)来集成 git 个分支:

  • git merge --no-ff 始终创建合并提交,保留分支提交历史
  • git merge 如果可能,跳过创建合并提交,这不会保留分支提交历史
  • git rebase 不创建合并提交,更改 myBranch 历史记录,保留 myBranch 历史记录(技术上),因为当您合并它时它将在 devBranch 中可见(虽然提交是线性的,但在 devBranch 提交历史中应用 myBranch 时没有立即线索)。

注意:由于您变基更改历史记录,请确保myBranch 未共享。因此,您以后可能还想 push --force

git merge and git rebase both of these commands are designed to integrate changes from one branch into another branch—they just do it in very different ways.

git 合并在您的 myBranch 之上创建合并提交以带来 devBranhc 更改,同时 git rebase 将整个 myBranch 移动到开始devBranch 的提示,有效地合并了 devBranhc.

中的所有新提交

示例:

假设初始分支历史是这样的:

git 合并 : git merge devBranch

git 变基 : git rebase devBranch