Re: [PATCH v3 8/9] user-manual: Flesh out uncommitted changes and submodule updates
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:56:10
"W. Trevor King" [off-list ref] writes:
quoted hunk
From: "W. Trevor King" <redacted> 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 <redacted> --- 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