From e3bf7a0bc56990f02434c5dd55d3d9e0badbc716 Mon Sep 17 00:00:00 2001
From: Richard Hartmann <richih.mailinglist@gmail.com>
Date: Sun, 1 May 2011 23:25:30 +0200
Subject: [PATCH] allow vcsh clone <repo>; without <target>

---
 TODO | 2 +-
 vcsh | 6 ++++--
 2 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/TODO b/TODO
index d273f5d..be32110 100644
--- a/TODO
+++ b/TODO
@@ -4,5 +4,5 @@
 * use PROMPT_SUBST in my own prompt instead of calling buildPS1 again to make this work for everyone, not just me
 * if we are within a vcsh already, only help, run and exit should be allowed
 * ^d re-binding does fail weirdly once i vcsh exit
-* allow vcsh clone <repo>; without <target>
 * set git config core.worktree $HOME or ../../../.. ?
+* vcsh clone fails when remote is empty
diff --git a/vcsh b/vcsh
index c26b50a..0bf5a14 100755
--- a/vcsh
+++ b/vcsh
@@ -19,7 +19,7 @@ help() {
 
    init           Initialize a new repository
    clone <remote>
-         <repo>   Clone from an existing repository
+         [<repo>] Clone from an existing repository
 
    exit           Exit vcsh mode" >&2
 }
@@ -90,7 +90,9 @@ elif [ "$1" = 'use' ]; then
 
 elif [ "$1" = 'clone' ]; then
 	export GIT_REMOTE="$2"
-	export REPO_NAME="$3"
+	REPO_NAME="$3"
+	[[ -z $REPO_NAME ]] && REPO_NAME=$(basename $GIT_REMOTE .git)
+	export REPO_NAME
 	export GIT_DIR="$VCSH_BASE/$REPO_NAME.git"
 	init
 
-- 
GitLab