Re: format-patch and submodules
- From
Luke Diamand <luke@diamand.org>
- Date
- Jun 10, 2015, 21:14 UTC
- Message-ID
- <5578A8AC.2090704@diamand.org>
- In-Reply-To
- <CAD2z=MBSAzENvj1-WUMzrXznvudjCc3vyvYQQ+wMnPC3G3Go2Q@mail.gmail.com>
On 10/06/15 18:04, Christopher Dunn wrote:
> Sorry. I thought empty patches were made to work in other cases. > > 'git-p4' needs to skip these. Wrong mailing list then.
Possibly the right mailing list - can you explain what you mean here w.r.t git-p4 please?
Thanks! Luke
Show 54 quoted lines
> > On Tue, Jun 9, 2015 at 1:52 PM, Jens Lehmann <Jens.Lehmann@web.de> wrote: >> Am 05.06.2015 um 01:20 schrieb Christopher Dunn: >>> >>> (Seen in git versions: 2.1.0 and 1.9.3 et al.) >>> >>> $ git format-patch --stdout X^..X | git apply check - >>> fatal: unrecognized input >>> >>> This fails when the commit consists of nothing but a submodule change >>> (as in 'git add submodule foo'), but it passes when a file change is >>> added to the same commit. >>> >>> There used to be a similar problem for empty commits, but that was >>> fixed around git-1.8: >>> >>> >>> http://stackoverflow.com/questions/20775132/cannot-apply-git-patch-replacing-a-file-with-a-link >>> >>> Now, 'git format-patch' outputs nothing for an empty commit. I suppose >>> that needs to be the behavior also when only submodules are changed, >>> since in that case there is no 'diff' section from 'format-patch'. >>> >>> Use-case: git-p4 >>> >>> Of course, we do not plan to add the submodule into Perforce, but we >>> would like this particular command to behave the same whether there >>> are other diffs or not. >> >> >> Hmm, I'm not sure that this is a bug. It looks to me like doing a >> >> $ git format-patch --stdout X^..X | git apply check - >> >> when nothing is changed except submodules and expecting it to work >> is the cause of the problem. >> >> I get the same error when I do: >> >> $git format-patch --stdout master..master | git apply --check - >> fatal: unrecognized input >> >> No submodules involved, just an empty patch. >> >> I assume you want to ignore all submodule changes, so you should >> check if e.g. "git diff --ignore-submodules X^..X" returns anything >> before applying that? (From the command you ran I assume you might >> be able to drop the --ignore-submodules because you already did set >> "diff.ignoreSubmodules" to "all"?) > -- > 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 >