代码之家  ›  专栏  ›  技术社区  ›  Alexander Prisazhny

如何从pr的另一个分支删除不需要的提交

  •  0
  • Alexander Prisazhny  · 技术社区  · 6 年前

    我做了件蠢事。我从分支a分支,在新分支上进行更改,将pr推送到分支b(也会将许多不需要的提交带入其中)。

    我的问题是,我只需要在我做了更改的分支上删除几个提交,但我不知道如何做。有很多关于如何消除最后一次提交的信息,但在我的情况下,这正是我想留在分支上的最后一次提交。

    0 回复  |  直到 6 年前
        1
  •  1
  •   Romain Valeri    6 年前

    你可以从branchb创建一个新的分支

    git checkout branchB
    git checkout -b newB
    

    然后从上一个分支获取所需的更改(我们称之为 branchFromA 这里)

    git cherry-pick branchFromA
    

    (这最后一次) command 只从分支中选择了最后一个提交*,如您所愿)

    现在将是一个简单的快速合并到branchb:

    git checkout branchB
    git merge newB
    

    或者在最后一个阶段,因为你似乎在使用prs,所以只需按下 newB 到偏远地区,做一个新的公关 纽布 branchB ,最后取消您的 小枝 布兰奇 公共关系。


    *通常与显式提交引用一起使用,但您可以给它提供一个分支或标记名,而REF指向的提交被作为樱桃选择的目标。