From: Jens Lehmann Date: Sun, 04 Oct 2009 17:51:36 GMT Subject: Re: [PATCH RESEND] git submodule add: make the parameter optional Message-ID: <4AC8E0A8.4000901@web.de> In-Reply-To: <7vbpl2srw9.fsf@alter.siamese.dyndns.org> Junio C Hamano schrieb: > Jens Lehmann writes: > >> When is not given, use the "humanish" part of the source repository >> instead. >> >> Signed-off-by: Jens Lehmann >> --- >> >> With this patch, git submodule add behaves like git clone in this respect. >> >> Didn't get a response the last weeks, so here is a resend. >> >> >> Documentation/git-submodule.txt | 8 ++++++-- >> git-submodule.sh | 7 ++++++- >> t/t7400-submodule-basic.sh | 16 ++++++++++++++++ >> 3 files changed, 28 insertions(+), 3 deletions(-) >> >> diff --git a/Documentation/git-submodule.txt b/Documentation/git-submodule.txt >> index 5ccdd18..4ef70c4 100644 >> --- a/Documentation/git-submodule.txt >> +++ b/Documentation/git-submodule.txt >> @@ -10,7 +10,7 @@ SYNOPSIS >> -------- >> [verse] >> 'git submodule' [--quiet] add [-b branch] >> - [--reference ] [--] >> + [--reference ] [--] [] >> 'git submodule' [--quiet] status [--cached] [--recursive] [--] [...] >> 'git submodule' [--quiet] init [--] [...] >> 'git submodule' [--quiet] update [--init] [-N|--no-fetch] [--rebase] >> @@ -69,7 +69,11 @@ add:: >> to the changeset to be committed next to the current >> project: the current project is termed the "superproject". >> + >> -This requires two arguments: and . >> +This requires at least one argument: . The optional >> +argument is the relative location for the cloned submodule >> +to exist in the superproject. If is not given, the >> +"humanish" part of the source repository is used ("repo" for >> +"/path/to/repo.git" and "foo" for "host.xz:foo/.git"). > > I do not know if this is useful in practice nor even desired. Comments? As nobody commented until now, i'll explain my motivation for this patch. When adding submodules i was surprised to find that i had to explicitly provide the pathname even though it could be easily generated from the reponame as git clone does it. And i see git clone and git submodule add as related commands from a users perspective, they both connect a remote repo to a working directory. IMHO this patch makes the ui more consistent and doesn't break existing setups or scripts. And it is really useful because i don't do typos in the pathname anymore ;-) Jens