diff options
author | Nicolas Morey-Chaisemartin <nmorey@kalray.eu> | 2011-04-01 11:42:03 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2011-04-04 10:50:50 -0700 |
commit | 9db31bdf5c834689c826f809d6d15bf7ab8d3598 (patch) | |
tree | a355228e9a008b9430f3e9702a867ac80a19ee02 /Documentation | |
parent | 8e848868fff625a8dda92fb11edf2b7975827e1a (diff) | |
download | git-9db31bdf5c834689c826f809d6d15bf7ab8d3598.tar.gz git-9db31bdf5c834689c826f809d6d15bf7ab8d3598.tar.xz |
submodule: Add --force option for git submodule update
By default git submodule update runs a simple checkout on submodules that
are not up-to-date. If the submodules contains modified or untracked
files, the command may exit sanely with an error:
$ git submodule update
error: Your local changes to the following files would be overwritten by
checkout:
file
Please, commit your changes or stash them before you can switch branches.
Aborting
Unable to checkout '1b69c6e55606b48d3284a3a9efe4b58bfb7e8c9e' in
submodule path 'test1'
In order to reset a whole git submodule tree, a user has to run first 'git
submodule foreach --recursive git checkout -f' and then run 'git submodule
update'.
This patch adds a --force option for the update command (only used for
submodules without --rebase or --merge options). It passes the --force
option to git checkout which will throw away the local changes.
Signed-off-by: Nicolas Morey-Chaisemartin <nmorey@kalray.eu>
Acked-by: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/git-submodule.txt | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/Documentation/git-submodule.txt b/Documentation/git-submodule.txt index 1ed331c59..9f84da7ad 100644 --- a/Documentation/git-submodule.txt +++ b/Documentation/git-submodule.txt @@ -185,8 +185,10 @@ OPTIONS -f:: --force:: - This option is only valid for the add command. - Allow adding an otherwise ignored submodule path. + This option is only valid for add and update commands. + When running add, allow adding an otherwise ignored submodule path. + When running update, throw away local changes in submodules when + switching to a different commit. --cached:: This option is only valid for status and summary commands. These |