将帅哥重组为提交

Her*_*nan 2 git commit squash

我对一些代码进行了重大的重构,在此过程中,我多次提交。尚未将其推送到任何公共仓库。在推送之前,我现在想将提交重新组织成逻辑单元。问题是我不仅要压缩提交内容,还希望将大块重新组织为其他提交内容。

为了清楚起见,我将A与B1,B2,B3一起提交,并将B与B1,B2,B3进行。我想签出A之前的版本,并拥有新的提交C,带有大块A1,A2,B2和新的提交D,带有大块B1,B3,A3。

提前致谢。

Ion*_*tan 5

看一下git rebase拆分提交

  • 使用这种复杂的重组,最简单的方法可能是先完全拆分提交,然后再进行第二次交互式重新部署,以根据需要重新排列和压缩它们。 (3认同)
  • 另一个重要提示是,您可以使用git stash来提供很多帮助:在重置HEAD ^后将分支提示移回之后,为首次拆分提交添加所需内容,然后运行git stash --keep- index`存放所有未添加的更改,但保留索引,测试其中的内容,提交,然后使用git stash pop取回其余部分。这样,您就可以干净地测试您提交的内容,就好像您只是聪明地进行了那些更改一样。泡沫,冲洗,重复! (3认同)