【发布时间】:2019-06-07 05:43:47
【问题描述】:
有时,在对多个文件进行多次更改后,我想将它们拆分为一组新的提交。我知道git add 的--patch 选项和git 的交互模式。但据我所知,这些迫使我逐步遍历所有块,决定是否要暂存它们,然后提交暂存的块。我必须为每个新提交重复该过程。因此,我必须多次查看某些块,直到最终达到正确的提交。
是否有一个命令或工具可以让我一次性完成所有更改,将每个更改分配给(不断增长的)一组目标提交,并最终进行这些提交?
【问题讨论】:
有时,在对多个文件进行多次更改后,我想将它们拆分为一组新的提交。我知道git add 的--patch 选项和git 的交互模式。但据我所知,这些迫使我逐步遍历所有块,决定是否要暂存它们,然后提交暂存的块。我必须为每个新提交重复该过程。因此,我必须多次查看某些块,直到最终达到正确的提交。
是否有一个命令或工具可以让我一次性完成所有更改,将每个更改分配给(不断增长的)一组目标提交,并最终进行这些提交?
【问题讨论】:
简短的回答是否定的,没有工具可以做到这一点。
你不是唯一一个想要它的人:见Multiple staging areas。然而,真正好的实现是极其困难的。我对构建一种half-assed(或至少未完全确定)实现的方法有一个尚未完全成熟的想法,我在对该问题的回答中对此进行了概述。
【讨论】: