当我对Git中的文件进行更改时,如何才能只提交部分更改?

例如,如何在文件中更改的30行中只提交15行?


当前回答

IntelliJ IDEA(以及我猜该系列的所有其他产品)自2018.1版起就内置了对部分提交的支持。

其他回答

在所有这些工具中,我最喜欢Fork(虽然不是免费的)!

与其他游戏相比,它使用起来非常时尚优雅,单击鼠标旁边的按钮可以进行大块或线条分段。

另一个选择是GitKraken,有趣但更复杂和强大!

我想把lazygit添加到工具列表中。这是一个不错的命令行gui(即,即使不允许X转发,也可以通过ssh工作)。它具有广泛的功能(例如,选择要提交的行、交互式重基)、有用的着色,并且使用起来相对简单。可以以多种方式安装(go、conda、包管理器等)。仍在积极开发/维护。

如果您使用emacs,请查看Magit,它为emacs提供了一个git接口。它非常支持分段大块(文件的一部分)。

对于emacs,还有gitsum

gitgui在diff视图下提供了此功能。只需右键单击您感兴趣的行,就会看到一个“stage this line to commit”菜单项。