git-apply quirks

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: <git@...>
Date: Tuesday, June 10, 2008 - 3:40 pm

Hi.

I work with a lot of backporting of patches and there are times when
people combine multiple patches together such that the resulting patch can
have multiple chunks changing the same file.  I have noticed git-apply
does not handle this case correctly.  It usually ignores all previous
chunks and only applies the last one.

The same scenario can also cause git-apply to fail if a later patch chunk
depends on changes from an earlier patch chunk.

The traditional 'patch' command seems to handle the successfully.  Is this
git-apply behaviour intended or is it a bug?

The following example summarizes the problem:

#cd <some git repo>
# cat > dummy << EOF
This is
a
test
of
git-apply
doing
something
incorrectly.

Please
help.

EOF
#git-add dummy
#git commit -m 'test'
#git-apply <attached patch below>

You will notice in the git-diff output the first chunk is ignored and only
the second applies.

Cheers,
Don


diff a/dummy b/dummy
--- a/dummy
+++ b/dummy
@@ -1,5 +1,5 @@
 This is
-a
+the first
 test
 of
 git-apply

diff a/dummy b/dummy
--- a/dummy
+++ b/dummy
@@ -6,6 +6,8 @@ git-apply
 doing
 something
 incorrectly.
+Now here is the
+second test.
 
 Please
 help.

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
git-apply quirks, Don Zickus, (Tue Jun 10, 3:40 pm)