Git并添加-p问题

时间:2017-05-25 01:37:19

标签: git whitespace git-add git-patch git-stage

我刚刚将patch应用于3个文件,可以在此处看到diff

stack.hstack.cmain.c

任务是将patch分成各种commit,如评论,许可,重构等。

为此,我将使用git add -p

  1. 第一个hunk是main.c的许可,琐碎,我按y

  2. 第二个大块位于stack.c,包含一个许可证块,然后是两个评论。我s plit然后y n n

  3. 我将继续为git add -p的剩余部分执行此操作。

  4. 然而,它似乎没有应用n

    为了确认我的怀疑,我会再次进行新的git add -p,这次我将使用ethis将成为this

    git然后输出fatal: corrupt patch at line 50。所以基本上我的sn试图不让某些人陷入困境,但最终放弃了这些删除。

    应该删除

    +行,而不像-(你必须用空格替换那行),对吗?我做错了什么?

1 个答案:

答案 0 :(得分:1)

您似乎在每一步都没有关注git add -p + git commit。用n说“不”意味着剩余的更改尚未上演。对于要在每次提交中显示的每种类型的更改,您需要重复git add -p后跟git commit

  

然而,它似乎没有被应用!

这是设计的。这意味着你不希望在索引中。所以这些变化没有上演。提交时,它们不会成为该提交的一部分。您必须像上一次迭代一样重复该过程以获取/那些/。

一旦没有更多未完成的更改要提交,您就完成了git add -p + git commit次迭代。

再一次,你对n说“不”的帅哥将不会参与你对git commit的提交。

可能需要了解git的升级(或索引)是如何工作的。

相关问题