#!/usr/bin/env bash read -r -d '' usage << EOM Usage: gh-deploy-clone user/repo [ENVIRONMENT] EOM [ -z "$1" ] && echo && echo "$usage" && echo && exit 1 repo="$1" repo_name="${repo#*/}" env=$([ -n "$2" ] && echo "$2_" || echo) key="github_$env$repo_name" key_path="$HOME/.ssh/$key.rsa" cat >> "$HOME/.ssh/config" << EOM Host $repo_name.github.com HostName github.com User git IdentityFile $key_path IdentitiesOnly yes EOM ssh-keygen -f "$key_path" -N '' -t rsa -C "$key" echo echo echo Add the deploy key below to echo "https://github.com/$repo/settings/keys" echo and press enter to clone the repo. echo echo cat "$key_path.pub" echo echo read -p "Press enter to continue..."