I've got a file with the following changes:
# Manual hunk edit mode -- see bottom for a quick guide
@@ -280,6 +281,7 @@
if( foo )
{
bla();
- test( true );
+ removeThis();
+ test( false );
}
else
How can I commit the change for test()
only, and avoid committing removeThis() ?
Each time I try to edit the hunk manually git tells me it does not apply cleanly.
How can I commit the change for test() only, and avoid committing removeThis() ?
That's simple.
Enter add -i
mode, then select 5: [p]atch
by pressing pEnter.
Choose your file by entering its number and press Enter to start editing patches.
Press e to edit your hunk (you seem to have succesfully reached here by doing git add -p
instead).
Delete the line with removeThis()
completely, with +
sign at the beginning as well. Do not touch anything else! The resultant text should look like a patch for the change you're committing.
Save the file and exit the editor.
The patch will apply well. I've just checked. Check again too--maybe it's another hunk that doesn't apply?
Other than that, your ,
symbols near the +
/-
look suspicious. Perhaps, your patch
and diff
programs are somehow out of sync? Try removing the ,
s from the hunk as well.