* format-patch and submodules @ 2015-06-04 23:20 Christopher Dunn 2015-06-09 18:52 ` Jens Lehmann 0 siblings, 1 reply; 5+ messages in thread From: Christopher Dunn @ 2015-06-04 23:20 UTC (permalink / raw) To: git (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. ~Christopher Dunn (cdunn2001) ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: format-patch and submodules 2015-06-04 23:20 format-patch and submodules Christopher Dunn @ 2015-06-09 18:52 ` Jens Lehmann 2015-06-10 17:04 ` Christopher Dunn 0 siblings, 1 reply; 5+ messages in thread From: Jens Lehmann @ 2015-06-09 18:52 UTC (permalink / raw) To: Christopher Dunn, git 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"?) ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: format-patch and submodules 2015-06-09 18:52 ` Jens Lehmann @ 2015-06-10 17:04 ` Christopher Dunn 2015-06-10 21:14 ` Luke Diamand 0 siblings, 1 reply; 5+ messages in thread From: Christopher Dunn @ 2015-06-10 17:04 UTC (permalink / raw) To: Jens Lehmann; +Cc: git Sorry. I thought empty patches were made to work in other cases. 'git-p4' needs to skip these. Wrong mailing list then. 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"?) ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: format-patch and submodules 2015-06-10 17:04 ` Christopher Dunn @ 2015-06-10 21:14 ` Luke Diamand 2015-06-10 22:41 ` Christopher Dunn 0 siblings, 1 reply; 5+ messages in thread From: Luke Diamand @ 2015-06-10 21:14 UTC (permalink / raw) To: Christopher Dunn, Jens Lehmann; +Cc: git 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 > > 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 > ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: format-patch and submodules 2015-06-10 21:14 ` Luke Diamand @ 2015-06-10 22:41 ` Christopher Dunn 0 siblings, 0 replies; 5+ messages in thread From: Christopher Dunn @ 2015-06-10 22:41 UTC (permalink / raw) To: Luke Diamand; +Cc: Jens Lehmann, git Well, now it gets more complicated. I want git-p4 to ignore submodules completely. But it fails only *only* the submodules changed. (At least, my version fails. I'll try to diff against latest.) But to debug this, I had to add a dry-run mode to git-p4. And I am using a version of git-p4 which uses 'git-notes' rather than re-writing history. If you want, you can try my version: https://github.com/pb-cdunn/git-p4 On Wed, Jun 10, 2015 at 4:14 PM, Luke Diamand <luke@diamand.org> wrote: > 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 > > > > >> >> 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 >> > ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2015-06-10 22:42 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2015-06-04 23:20 format-patch and submodules Christopher Dunn 2015-06-09 18:52 ` Jens Lehmann 2015-06-10 17:04 ` Christopher Dunn 2015-06-10 21:14 ` Luke Diamand 2015-06-10 22:41 ` Christopher Dunn
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).