git - 使用 cherry-pick 或 rebase --onto 选择一系列提交最终会得到相同的结果吗?

标签 git git-rebase cherry-pick

有时我想从不同的存储库中选择一系列提交。我知道有两种方法可以做到这一点。

1.

git checkout myBranch
git cherry-pick begin..end

  1. git rebase --onto myBranch begin end

我发现第一个版本更容易记住。但是,我读了很多关于与 merge 相比 cherry-pick 是多么邪恶的内容,因为它有点打破历史。但我还没有弄清楚的是,在挑选一系列提交或使用 --onto

重新定位它们之间是否存在差异

我倾向于认为应该没有区别。我错了吗?

最佳答案

这两个命令是等价的,您只是在做普通 rebase 会做的工作,找出未 merge 的提交以重播到目标分支。

关于git - 使用 cherry-pick 或 rebase --onto 选择一系列提交最终会得到相同的结果吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11428400/

相关文章:

git - git 命令概要中的 `()` 是什么意思?

git - GIT rebase 要求重新提交更改

git - 樱桃选择问题 : changes from previous commits are also applied

git - 与 git 有冲突的 cherry-picking

git - 推送到 git repo 时是否应该忽略 .obj 文件?

Git 忽略当前更改

将一组提交限制在特定分支的 git 策略

git - 重新确定所有未 merge 提交的基础

Git rebase --onto : atal: Needed a single revision

git - 当有人从我的 git 提交中挑选并提交了他们自己的提交时,我该如何 merge ?