Files
dotfiles/meta/git-remote
druckdev 4c3dfc4c52 meta:git-remote: Don't hardcode origin as remote
As I know how the url should look like I can allow the default remote
being named differently.
2022-01-22 00:02:36 +01:00

18 lines
492 B
Bash
Executable File

#!/bin/sh
die() {
printf "$1" >&2
exit ${2:-1}
}
remote="$(git remote -v | grep -m1 "druckdev/dotfiles" | cut -f1)"
url="$(git remote get-url "$remote")"
! printf "$url" | grep -q '^git@' || die "Using ssh already.\n" 0
host="$(printf "$url" | cut -d/ -f3)"
grep -q "$host" "$HOME"/.ssh/known_hosts || die "No ssh key for $host found.\n"
ssh_url="$(printf "$url" | sed 's_^https\?://_git@_;s_/_:_')"
git remote set-url "$remote" "$ssh_url"
die "Set $remote remote url to $ssh_url\n" $?