git submodule add: make the <path> parameter optional
When <path> is not given, use the "humanish" part of the source repository instead. Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
a16753dc2e
commit
1414e5788b
@ -10,7 +10,7 @@ SYNOPSIS
|
|||||||
--------
|
--------
|
||||||
[verse]
|
[verse]
|
||||||
'git submodule' [--quiet] add [-b branch]
|
'git submodule' [--quiet] add [-b branch]
|
||||||
[--reference <repository>] [--] <repository> <path>
|
[--reference <repository>] [--] <repository> [<path>]
|
||||||
'git submodule' [--quiet] status [--cached] [--recursive] [--] [<path>...]
|
'git submodule' [--quiet] status [--cached] [--recursive] [--] [<path>...]
|
||||||
'git submodule' [--quiet] init [--] [<path>...]
|
'git submodule' [--quiet] init [--] [<path>...]
|
||||||
'git submodule' [--quiet] update [--init] [-N|--no-fetch] [--rebase]
|
'git submodule' [--quiet] update [--init] [-N|--no-fetch] [--rebase]
|
||||||
@ -69,7 +69,11 @@ add::
|
|||||||
to the changeset to be committed next to the current
|
to the changeset to be committed next to the current
|
||||||
project: the current project is termed the "superproject".
|
project: the current project is termed the "superproject".
|
||||||
+
|
+
|
||||||
This requires two arguments: <repository> and <path>.
|
This requires at least one argument: <repository>. The optional
|
||||||
|
argument <path> is the relative location for the cloned submodule
|
||||||
|
to exist in the superproject. If <path> 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").
|
||||||
+
|
+
|
||||||
<repository> is the URL of the new submodule's origin repository.
|
<repository> is the URL of the new submodule's origin repository.
|
||||||
This may be either an absolute URL, or (if it begins with ./
|
This may be either an absolute URL, or (if it begins with ./
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
# Copyright (c) 2007 Lars Hjemli
|
# Copyright (c) 2007 Lars Hjemli
|
||||||
|
|
||||||
dashless=$(basename "$0" | sed -e 's/-/ /')
|
dashless=$(basename "$0" | sed -e 's/-/ /')
|
||||||
USAGE="[--quiet] add [-b branch] [--reference <repository>] [--] <repository> <path>
|
USAGE="[--quiet] add [-b branch] [--reference <repository>] [--] <repository> [<path>]
|
||||||
or: $dashless [--quiet] status [--cached] [--recursive] [--] [<path>...]
|
or: $dashless [--quiet] status [--cached] [--recursive] [--] [<path>...]
|
||||||
or: $dashless [--quiet] init [--] [<path>...]
|
or: $dashless [--quiet] init [--] [<path>...]
|
||||||
or: $dashless [--quiet] update [--init] [-N|--no-fetch] [--rebase] [--reference <repository>] [--merge] [--recursive] [--] [<path>...]
|
or: $dashless [--quiet] update [--init] [-N|--no-fetch] [--rebase] [--reference <repository>] [--merge] [--recursive] [--] [<path>...]
|
||||||
@ -160,6 +160,11 @@ cmd_add()
|
|||||||
repo=$1
|
repo=$1
|
||||||
path=$2
|
path=$2
|
||||||
|
|
||||||
|
if test -z "$path"; then
|
||||||
|
path=$(echo "$repo" |
|
||||||
|
sed -e 's|/$||' -e 's|:*/*\.git$||' -e 's|.*[/:]||g')
|
||||||
|
fi
|
||||||
|
|
||||||
if test -z "$repo" -o -z "$path"; then
|
if test -z "$repo" -o -z "$path"; then
|
||||||
usage
|
usage
|
||||||
fi
|
fi
|
||||||
|
@ -306,4 +306,20 @@ test_expect_success 'submodule <invalid-path> warns' '
|
|||||||
|
|
||||||
'
|
'
|
||||||
|
|
||||||
|
test_expect_success 'add submodules without specifying an explicit path' '
|
||||||
|
mkdir repo &&
|
||||||
|
cd repo &&
|
||||||
|
git init &&
|
||||||
|
echo r >r &&
|
||||||
|
git add r &&
|
||||||
|
git commit -m "repo commit 1" &&
|
||||||
|
cd .. &&
|
||||||
|
git clone --bare repo/ bare.git &&
|
||||||
|
cd addtest &&
|
||||||
|
git submodule add "$submodurl/repo" &&
|
||||||
|
git config -f .gitmodules submodule.repo.path repo &&
|
||||||
|
git submodule add "$submodurl/bare.git" &&
|
||||||
|
git config -f .gitmodules submodule.bare.path bare
|
||||||
|
'
|
||||||
|
|
||||||
test_done
|
test_done
|
||||||
|
Loading…
Reference in New Issue
Block a user