Junio C Hamano <gitster@xxxxxxxxx> writes: > The last-one-wins sounds like a natural outcome for reusing the > config reading machinery, and the first-one-wins sounds like a total > confusion, but we probably should fail any operation before the user > fixes the .gitmodules by removing all but one path for each > submodule. An informal poll amongst Googlers suggests that my team mostly agrees: last-one-wins makes more sense than first-one-wins, but erroring out is the most sensible thing to do. I'm not sure how reasonable it is to just fail. It makes sense if we were only reading .gitmodules from the working tree (the user can fix that), but we also read .gitmodules from commits, and I don't see (yet) how a user could reasonably recover from that.