Now that we have much better output when displaying diffs of submodules in git gui and gitk (many thanks to all involved!), another usability issue shows up: A dirty working directory of a submodule isn't visible in git gui or gitk. So you might think a "submodule update" would be ok - as you see no changes - just too see it fail because the submodules working directory is dirty. Or - even worse - you /think/ you committed your changes in a submodule while you didn't. That can lead to 'interesting' problems which can be pretty hard to diagnose (like breaking builds on other peoples machines). A possible solution could look like this: AFAICS, git gui and gitk use "git diff-files" both to get the file names of unstaged local changes and to later display the actual differences. If they could tell the diff core to also check the submodule working directories and to output an extra line - maybe something like "Submodule <name> contains uncommitted local changes" - when a submodules working directory is dirty, git gui and gitk could show the submodules state adequately. What do you think about this approach? -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html