diff options
author | Nguyễn Thái Ngọc Duy <pclouds@gmail.com> | 2015-01-03 16:41:27 +0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2015-01-07 10:25:20 -0800 |
commit | a83a66aca25950dd2ea7367de093b21edb8ca991 (patch) | |
tree | cf75a98fcbd6b88d58c0068fcb61a6d1069bd4df | |
parent | checkout: add --ignore-other-wortrees (diff) | |
download | tgif-a83a66aca25950dd2ea7367de093b21edb8ca991.tar.xz |
git-checkout.txt: a note about multiple checkout support for submodules
The goal seems to be using multiple checkouts to reduce disk space.
But we have not reached an agreement how things should be. There are a
couple options.
- You may want to keep $SUB repos elsewhere (perhaps in a central
place) outside $SUPER. This is also true for nested submodules
where a superproject may be a submodule of another superproject.
- You may want to keep all $SUB repos in $SUPER/modules (or some
other place in $SUPER)
- We could even push it further and merge all $SUB repos into $SUPER
instead of storing them separately. But that would at least require
ref namespace enabled.
On top of that, git-submodule.sh expects $GIT_DIR/config to be
per-worktree, at least for the submodule.* part. Here I think we have
two options, either update config.c to also read
$GIT_DIR/config.worktree (which is per worktree) in addition to
$GIT_DIR/config (shared) and store worktree-specific vars in the new
place, or update git-submodule.sh to read/write submodule.* directly
from $GIT_DIR/config.submodule (per worktree).
These take time to address properly. Meanwhile, make a note to the
user that they should not use multiple worktrees in submodule context.
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | Documentation/git-checkout.txt | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/Documentation/git-checkout.txt b/Documentation/git-checkout.txt index 52eaa484c8..72def5b689 100644 --- a/Documentation/git-checkout.txt +++ b/Documentation/git-checkout.txt @@ -463,6 +463,9 @@ to `/path/main/.git/worktrees/test-next` then a file named `test-next` entry from being pruned. See linkgit:gitrepository-layout[5] for details. +Multiple checkout support for submodules is incomplete. It is NOT +recommended to make multiple checkouts of a superproject. + EXAMPLES -------- |