用`git add -p`解开两行

时间:2010-03-03 15:37:49

标签: git git-add

我有一个包含以下更改的文件:

# Manual hunk edit mode -- see bottom for a quick guide
@@ -280,6 +281,7 @@
 if( foo )
 {
     bla();
-    test( true );
+    removeThis();
+    test( false );
 }
 else

如何仅为test()提交更改,并避免提交removeThis()? 每当我尝试手动编辑大块时,git告诉我它不适合干净。

1 个答案:

答案 0 :(得分:26)

  

如何仅为test()提交更改,并避免提交removeThis()?

这很简单。

  1. 进入add -i模式,然后按 p Enter 选择5: [p]atch

  2. 输入数字选择您的文件,然后按 Enter 开始编辑补丁。

  3. e 编辑你的大块头(你似乎已经通过git add -p成功地到达了这里)。

  4. 删除removeThis() 完全的行,并在开头添加+符号。不要碰任何其他东西!生成的文本应该看起来像是您要提交的更改的补丁。

  5. 保存文件并退出编辑器。

  6. 该补丁将适用。我刚检查过。再次检查 - 也许这是另一个不适用的大块?

    除此之外,, / +附近的-符号看起来很可疑。也许,您的patchdiff计划在某种程度上不同步?尝试从大块中删除,