"W. Trevor King" <wk...@tremily.us> writes: > From: "W. Trevor King" <wk...@tremily.us> > > If you try and update a submodule with a dirty working directory, you > get an error message like: > > $ git submodule update > error: Your local changes to the following files would be overwritten by > checkout: > ... > Please, commit your changes or stash them before you can switch branches. > Aborting > ... > > Mention this in the submodule notes. The previous phrase was short > enough that I originally thought it might have been referring to the > reflog note (obviously, uncommitted changes will not show up in the > reflog either ;). > > Signed-off-by: W. Trevor King <wk...@tremily.us> > --- > Documentation/user-manual.txt | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/Documentation/user-manual.txt b/Documentation/user-manual.txt > index cf09ddf..3381c22 100644 > --- a/Documentation/user-manual.txt > +++ b/Documentation/user-manual.txt > @@ -3729,7 +3729,9 @@ module a > > NOTE: The changes are still visible in the submodule's reflog. > > +If you did not commit your submodule changes, the changes will *not* > +be silently overwritten. Instead, you get the usual warning about not > +being able switch from a dirty branch.
The scenario this talks about is to commit changes in the superproject and then to run "submodule update". I think the above clarification is still incomplete. You may have committed in the submodule some changes but not all. If you have uncommitted changes in your submodule working tree, "git submodule update" will not overwrite them. Instead... would be an improvement, I think. > > [[low-level-operations]] > Low-level Git operations -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html