#!/bin/sh # Translate different repo notations into ssh # Usage: # git repo # git repo [user] test "$1" = https && https=true && shift case "$1" in (http*) echo "$1" | sed "s|.*//\([^/]*\)/\(.*\)|git@\1:\2.git|" ;; (git:*|ssh:*) echo "$1" ;; (*) case $1 in (socha) user=software-challenge; host=git@github.com;; (hub) host=git@github.com;; (lab) host=git@gitlab.com;; (*) host=${1:-gitea@git.jfischer.org};; esac user=${3:-${user:-$(git config user.name)}} repo=${2:-$(basename $PWD)} if test "$https" then echo "https://${host#git*@}/$user/$repo" else echo "$host:$user/$repo.git" fi esac