1
0
Fork 0
mirror of https://github.com/git/git.git synced 2024-11-07 17:53:12 +01:00
git/builtin
Jens Lehmann 7dce19d374 fetch/pull: Add the --recurse-submodules option
Until now you had to call "git submodule update" (without -N|--no-fetch
option) or something like "git submodule foreach git fetch" to fetch
new commits in populated submodules from their remote.

This could lead to "(commits not present)" messages in the output of
"git diff --submodule" (which is used by "git gui" and "gitk") after
fetching or pulling new commits in the superproject and is an obstacle for
implementing recursive checkout of submodules. Also "git submodule
update" cannot fetch changes when disconnected, so it was very easy to
forget to fetch the submodule changes before disconnecting only to
discover later that they are needed.

This patch adds the "--recurse-submodules" option to recursively fetch
each populated submodule from the url configured in the .git/config of the
submodule at the end of each "git fetch" or during "git pull" in the
superproject. The submodule paths are taken from the index.

The hidden option "--submodule-prefix" is added to "git fetch" to be able
to print out the full paths of nested submodules.

Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-11-12 15:06:03 -08:00
..
add.c git add: Add the "--ignore-missing" option for the dry run 2010-07-12 15:13:54 -07:00
annotate.c
apply.c Teach "apply --index-info" to handle rename patches 2010-07-23 14:44:38 -07:00
archive.c
bisect--helper.c
blame.c Merge branch 'maint' 2010-08-22 20:18:37 -07:00
branch.c
bundle.c
cat-file.c
check-attr.c
check-ref-format.c Allow "check-ref-format --branch" from subdirectory 2010-08-06 10:01:45 -07:00
checkout-index.c
checkout.c Merge branch 'dg/local-mod-error-messages' 2010-08-21 23:26:46 -07:00
clean.c Add -e/--exclude to git-clean. 2010-07-20 16:52:53 -07:00
clone.c
commit-tree.c
commit.c Merge branch 'jn/fix-abbrev' into maint 2010-08-20 12:53:09 -07:00
config.c config: add --local option 2010-08-04 12:01:10 -07:00
count-objects.c
describe.c
diff-files.c Submodules: Use "ignore" settings from .gitmodules too for diff and status 2010-08-09 09:11:44 -07:00
diff-index.c Submodules: Use "ignore" settings from .gitmodules too for diff and status 2010-08-09 09:11:44 -07:00
diff-tree.c Submodules: Use "ignore" settings from .gitmodules too for diff and status 2010-08-09 09:11:44 -07:00
diff.c Submodules: Use "ignore" settings from .gitmodules too for diff and status 2010-08-09 09:11:44 -07:00
fast-export.c
fetch-pack.c
fetch.c fetch/pull: Add the --recurse-submodules option 2010-11-12 15:06:03 -08:00
fmt-merge-msg.c
for-each-ref.c for-each-ref: fix objectname:short bug 2010-08-26 16:42:25 -07:00
fsck.c
gc.c
grep.c Merge branch 'tf/string-list-init' 2010-08-18 12:47:04 -07:00
hash-object.c
help.c Cast execl*() NULL sentinels to (char *) 2010-07-25 23:14:18 -07:00
index-pack.c index-pack: Don't follow replace refs. 2010-08-12 13:26:05 -07:00
init-db.c
log.c Fix 'git log' early pager startup error case 2010-08-25 12:11:59 -07:00
ls-files.c Merge branch 'ar/string-list-foreach' 2010-08-18 12:14:38 -07:00
ls-remote.c
ls-tree.c
mailinfo.c
mailsplit.c
merge-base.c
merge-file.c
merge-index.c
merge-ours.c
merge-recursive.c
merge-tree.c merge-tree: fix where two branches share no changes 2010-07-14 12:56:49 -07:00
merge.c Merge branch 'gb/split-cmdline-errmsg' 2010-08-21 23:28:55 -07:00
mktag.c
mktree.c
mv.c
name-rev.c
notes.c notes: allow --dry-run for -n and --verbose for -v 2010-08-09 10:12:50 -07:00
pack-objects.c
pack-redundant.c
pack-refs.c
patch-id.c
prune-packed.c
prune.c prune: allow --dry-run for -n and --verbose for -v 2010-08-09 10:13:18 -07:00
push.c Merge branch 'maint' 2010-08-12 18:07:09 -07:00
read-tree.c Merge remote branch 'ko/master' into jc/read-tree-cache-tree-fix 2010-07-08 18:55:50 -07:00
receive-pack.c
reflog.c
remote.c
replace.c
rerere.c Merge branch 'tf/string-list-init' 2010-08-18 12:47:04 -07:00
reset.c
rev-list.c
rev-parse.c Merge branch 'maint' 2010-07-07 11:18:26 -07:00
revert.c Merge branch 'cc/find-commit-subject' 2010-08-18 12:46:55 -07:00
rm.c
send-pack.c
shortlog.c
show-branch.c
show-ref.c
stripspace.c
symbolic-ref.c
tag.c
tar-tree.c
unpack-file.c
unpack-objects.c
update-index.c
update-ref.c
update-server-info.c
upload-archive.c
var.c
verify-pack.c
verify-tag.c
write-tree.c