Skip to content

Commit

Permalink
git-clone: Keep remote names when cloning unless explicitly told not to.
Browse files Browse the repository at this point in the history
With this patch the following commands all clone into the local directory
"repo". If repo exists, it will still barf.

	git-clone git://host.xz/repo.git
	git-clone /path/to/repo/.git
	git-clone host.xz:repo.git

I ended up doing the same source-to-target sed'ing for all our company
projects, so it was easier to add it directly to git-clone.

Signed-off-by: Andreas Ericsson <ae@op5.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
  • Loading branch information
Andreas Ericsson authored and Junio C Hamano committed Nov 11, 2005
1 parent 0867b01 commit 0879aa2
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 5 deletions.
12 changes: 7 additions & 5 deletions Documentation/git-clone.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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
-----------
Expand Down Expand Up @@ -68,17 +68,19 @@ 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
------
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
Expand Down
2 changes: 2 additions & 0 deletions git-clone.sh
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down

0 comments on commit 0879aa2

Please sign in to comment.