Git中最简单的方法是"挑选"单个文件的未提交更改?

cje*_*nek 8 git

如果我有一堆的未提交更改到一个单一的文件在我的Git工作目录,什么是这些变化中有选择地挑选最简单的方法是什么?

我目前的方法是"git diff"文件,然后手动查看实际文件旁边的差异.如果我想恢复一些旧代码,我可以从diff复制并粘贴到文件中.

如果可以在单个文件中查看和编辑更改,则在某些情况下会更容易.例如,是否有一个Git命令可用于将工作文件转换为类似冲突解决方案的格式 - 即在未提交的更改周围使用"<<<<"符号?通过这种方式,您可以选择更改而无需从一个文件剪切和粘贴到另一个文件.

我不知道如何实现这一点,因为它不是一个三向(合并)的情况.相反,它是一种双向情况,对一个文件进行一组更改(因此没有冲突).谢谢.

Alo*_*hal 11

您可以选择要在提交中添加哪些帅哥git add --patch.如果要添加该更改集,这将询问您文件更改中的每个块.如果某个特定的大块对你来说太大了,你可以进一步拆分它.还有另一种选择git-add,--interactive,它可以让你使用多个文件.

有关更多信息,请参阅git-add手册页或Google搜索中的此帖子.