aboutsummaryrefslogtreecommitdiff
path: root/cgit/ssh/git-shell-commands/fork
diff options
context:
space:
mode:
Diffstat (limited to 'cgit/ssh/git-shell-commands/fork')
-rwxr-xr-xcgit/ssh/git-shell-commands/fork18
1 files changed, 6 insertions, 12 deletions
diff --git a/cgit/ssh/git-shell-commands/fork b/cgit/ssh/git-shell-commands/fork
index c2bc799..d09985a 100755
--- a/cgit/ssh/git-shell-commands/fork
+++ b/cgit/ssh/git-shell-commands/fork
@@ -2,21 +2,12 @@
set -eu
+. "$(dirname $0)/_utils/input.sh"
+
remote_host="git.ediblemonad.dev"
owner_info="Akshay Nair <phenax5@gmail.com>"
-if [ $# -lt 2 ]; then
- echo "Usage: fork <name> <url>" 1>&2
- exit 1
-fi
-
-repo_name="$1"; shift 1;
-[ -z "$repo_name" ] && echo "Error: empty repo name" 1>&2 && exit 1
-(echo "$repo_name" | grep -q "^[A-Za-z0-9_-]\+$" 2>/dev/null) || (echo "Error: invalid repo name" 1>&2 && exit 1)
-
-remote_repo_url="$1"; shift 1;
-[ -z "$remote_repo_url" ] && echo "Error: empty repo url" 1>&2 && exit 1
-
+repo_name="$(input_repo_name)";
repo_dir="/git/${repo_name}.git"
if [ -d "$repo_dir" ]; then
@@ -24,6 +15,9 @@ if [ -d "$repo_dir" ]; then
exit 1;
fi
+description="$(input_repo_description "$repo_dir")"
+remote_repo_url="$(input_repo_remote_url)";
+
git clone --bare "$remote_repo_url" "$repo_dir"
cd "$repo_dir"