代码之家  ›  专栏  ›  技术社区  ›  Stephen

git rebase删除了未经樱桃采摘的“樱桃采摘”提交

  •  -1
  • Stephen  · 技术社区  · 6 月前

    我合并了一家分行 A. 进入之内 main ,然后意识到我不应该这样做。所以我创建了另一个分支 B 这还原了我在a中合并的部分内容,并将其合并。

    现在我已经决定,原来的更改终于可以取消了,所以我做了一个分支C来撤销B,让我接近我最初对a的更改(不完全是)。

    我还没有合并C.我跑了 git rebase main 在我推之前。我很快意识到,重基出现了以下错误:

    warning: skipped previously applied commit 6d3c69e8da
    hint: use --reapply-cherry-picks to include skipped commits
    

    基本上,在C中的2次提交中,有一次被跳过,因为它认为这是精心挑选的。我有几个与此相关的问题:

    1. 我没有使用任何内置的樱桃采摘功能,那么为什么它会认为它是樱桃采摘的呢?我从上一个分支手动复制了文件。
    2. 我怎样才能修复这个问题并保持C中的commit?我跑了 git rebase main --reapply-cherry-picks 然而,它所说的只是 当前分支机构mybranch是最新的。 并且实际上不重新应用任何东西。
    3. 为什么这个功能是有用的,当它与我想要的相反时?
    1 回复  |  直到 6 月前