From: Calvin Wan Date: Thu, 30 Jun 2022 21:08:57 GMT Subject: Re: [PATCH v3] submodule merge: update conflict error message Message-ID: In-Reply-To: > I notice that this is all above the "---", i.e. this becomes part of the > commit message when "git am"-ed. Intentional? Good catch. Not intentional at all. On Thu, Jun 30, 2022 at 1:35 PM Glen Choo wrote: > > Hi! I have a suggestion for the output text; I haven't looked closely at > the code changes. > > Calvin Wan writes: > > > Changes since v2: > > [...] > > Changes since v1: > > [...] > > I notice that this is all above the "---", i.e. this becomes part of the > commit message when "git am"-ed. Intentional? > > > If git detects a possible merge resolution, the following is printed: > > > > -------- > > > > Failed to merge submodule sub, but a possible merge resolution exists: > > Merge branch '' into > > > > > > If this is correct simply add it to the index for example > > by using: > > > > git update-index --cacheinfo 160000 "" > > > > which will accept this suggestion. > > > > CONFLICT (submodule): Merge conflict in > > Recursive merging with submodules is currently not supported. > > To manually complete the merge: > > - go to submodule (), and either update the submodule to a possible commit above or merge commit > > - come back to superproject, and `git add ` to record the above merge > > - resolve any other conflicts in the superproject > > - commit the resulting index in the superproject > > Automatic merge failed; fix conflicts and then commit the result. > > > > -------- > > I'm hesitant to recommend a plumbing command like "git update-index" to > the user, especially if the user is one who needs help resolving a > submodule merge conflict. I also believe this would be the first time we > recommend "git update-index". > > To do this using only porcelain commands, maybe: > > git -C checkout && > git add > > (Though this might need to be broken up into two commands because I'm > not sure if we ever include "&&" in a help message. I'm guessing we > don't for portability reasons?) > > > If git detects multiple possible merge resolutions, the following is printed: > > > > -------- > > > > Failed to merge submodule sub, but multiple possible merges exist: > > Merge branch '' into > > Merge branch '' into > > > > CONFLICT (submodule): Merge conflict in > > Recursive merging with submodules is currently not supported. > > To manually complete the merge: > > - go to submodule (), and either update the submodule to a possible commit above or merge commit > > - come back to superproject, and `git add ` to record the above merge > > - resolve any other conflicts in the superproject > > - commit the resulting index in the superproject > > Automatic merge failed; fix conflicts and then commit the result. > > > > ------- > > For consistency, perhaps include the "here's how to use the suggestion" > instructions here as well?