diff options
-rw-r--r-- | Documentation/git-clone.txt | 12 | ||||
-rwxr-xr-x | git-clone.sh | 2 |
2 files changed, 9 insertions, 5 deletions
diff --git a/Documentation/git-clone.txt b/Documentation/git-clone.txt index fefd2985f..83f58ae53 100644 --- a/Documentation/git-clone.txt +++ b/Documentation/git-clone.txt @@ -8,7 +8,7 @@ git-clone - Clones a repository. SYNOPSIS -------- -'git-clone' [-l [-s]] [-q] [-n] [-u <upload-pack>] <repository> <directory> +'git-clone' [-l [-s]] [-q] [-n] [-u <upload-pack>] <repository> [<directory>] DESCRIPTION ----------- @@ -68,9 +68,11 @@ OPTIONS be any URL git-fetch supports. <directory>:: - The name of a new directory to be cloned into. It is an - error to specify an existing directory. - + The name of a new directory to clone into. The "humanish" + part of the source repository is used if no directory is + explicitly given ("repo" for "/path/to/repo.git" and "foo" + for "host.xz:foo/.git"). Cloning into an existing directory + is not allowed. Author ------ @@ -78,7 +80,7 @@ Written by Linus Torvalds <torvalds@osdl.org> Documentation -------------- -Documentation by Junio C Hamano. +Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>. GIT diff --git a/git-clone.sh b/git-clone.sh index f5ef70b8a..8e7150127 100755 --- a/git-clone.sh +++ b/git-clone.sh @@ -96,6 +96,8 @@ if base=$(get_repo_base "$repo"); then fi dir="$2" +# Try using "humanish" part of source repo if user didn't specify one +[ -z "$dir" ] && dir=$(echo "$repo" | sed -e 's|/$||' -e 's|:*/*\.git$||' -e 's|.*/||g') mkdir "$dir" && D=$( (cd "$dir" && git-init-db && pwd) |