我写了一个使用git定期进行一系列提交的node模块。考虑到如果将这些提交分组到一个单独的提交中,那么提交将更好,我想使用“git rebase -i”将它们压缩成一个提交。
但是,压缩只在交互模式下才可能实现,这意味着当调用“git rebase -i”时需要手动编辑弹出的编辑器中的行。我想知道是否有可能通过编程方式执行此过程?例如,当用户调用“save”函数时,我的模块将进行一系列提交,然后自动将它们合并在一起。
更新:
为了更精确地描述我的操作,当调用“save”函数时,会传递一堆提交以发布。然后,我的模块将挑选这些提交并将它们放入“publish”分支中。这是一个单一的“publish”操作,但它会在“publish”分支上生成一堆提交。我想做的是将“publish”上的提交压缩,这样当我运行“git log”时,我只能看到“publish version 1”,“publish version 2”等,而不是每个发布操作5或10个提交。
但是,压缩只在交互模式下才可能实现,这意味着当调用“git rebase -i”时需要手动编辑弹出的编辑器中的行。我想知道是否有可能通过编程方式执行此过程?例如,当用户调用“save”函数时,我的模块将进行一系列提交,然后自动将它们合并在一起。
更新:
为了更精确地描述我的操作,当调用“save”函数时,会传递一堆提交以发布。然后,我的模块将挑选这些提交并将它们放入“publish”分支中。这是一个单一的“publish”操作,但它会在“publish”分支上生成一堆提交。我想做的是将“publish”上的提交压缩,这样当我运行“git log”时,我只能看到“publish version 1”,“publish version 2”等,而不是每个发布操作5或10个提交。
git commit --amend
命令来创建这些“最好分组”的提交呢? - user229044git merge --squash
将该分支合并回来。 - user229044