I noticed that I could not get a patch from Junio to apply earlier
today, and I think it is a regression in the builtin git-am
implementation. I had trouble reproducing with a basic test case,
though.
Basically, I picked up the three patches from this sub-thread:
http://thread.gmane.org/gmane.comp.version-control.git/288987/focus=290222
and tried to apply them on top of v2.8.0.
Doing it with "git am -3 patches" works. But doing it with:
git am patches
git am -3
doesn't. Bisecting shows that it did work before 783d7e8 (builtin-am:
remove redirection to git-am.sh, 2015-08-04).
I tried to tweak t4150 to show this by replacing a "git am -3 foo" with
"test_must_fail git am foo && git am -3", but it failed even on older
git, which made me think I fumbled the test somehow.
-Peff
Hi Jeff,
On Wed, Mar 30, 2016 at 10:15 AM, Jeff King [off-list ref] wrote:
I noticed that I could not get a patch from Junio to apply earlier
today, and I think it is a regression in the builtin git-am
implementation. I had trouble reproducing with a basic test case,
though.
Basically, I picked up the three patches from this sub-thread:
http://thread.gmane.org/gmane.comp.version-control.git/288987/focus=290222
and tried to apply them on top of v2.8.0.
Doing it with "git am -3 patches" works. But doing it with:
git am patches
git am -3
doesn't. Bisecting shows that it did work before 783d7e8 (builtin-am:
remove redirection to git-am.sh, 2015-08-04).
Yeah, with "git am -3" when resuming, the -3 will only affect the
current conflicting patch since 852a171 (am: let command-line options
override saved options, 2015-08-04).
Regards,
Paul
On Wed, Mar 30, 2016 at 12:18:30PM +0800, Paul Tan wrote:
On Wed, Mar 30, 2016 at 10:15 AM, Jeff King [off-list ref] wrote:
quoted
I noticed that I could not get a patch from Junio to apply earlier
today, and I think it is a regression in the builtin git-am
implementation. I had trouble reproducing with a basic test case,
though.
Basically, I picked up the three patches from this sub-thread:
http://thread.gmane.org/gmane.comp.version-control.git/288987/focus=290222
and tried to apply them on top of v2.8.0.
Doing it with "git am -3 patches" works. But doing it with:
git am patches
git am -3
doesn't. Bisecting shows that it did work before 783d7e8 (builtin-am:
remove redirection to git-am.sh, 2015-08-04).
Yeah, with "git am -3" when resuming, the -3 will only affect the
current conflicting patch since 852a171 (am: let command-line options
override saved options, 2015-08-04).
Ah, right. I had a nagging feeling that we had discussed this, and
indeed, I already participated in the discussion last July[1]. I even
apparently argued in favor of the new behavior[2]. Yikes. There goes my
mind.
Running "git am -3" for each patch which needs it does indeed
successfully apply the series.
Thanks for a quick response, and sorry for the noise.
-Peff
[1] http://thread.gmane.org/gmane.comp.version-control.git/274574
[2] In http://thread.gmane.org/gmane.comp.version-control.git/274574/focus=274635,
though I think there I more meant that in:
git am
git am -3
git am
the third one would not use "-3" again. So I was mostly confused
that in:
git am
git am -3
we would not use "-3" for the subsequent patches applied by that
second invocation. So maybe that is a bug. I dunno. I could see
arguments either way.