Remotes: kalinamall, home, github по SSH (.ru); origin убран.

Set-GitRemotes переименует origin по хосту; SSH config для .ru через LAN IP.
This commit is contained in:
2026-06-18 11:34:03 +10:00
parent 7f8e7c0cb2
commit 4caedb3074
8 changed files with 77 additions and 39 deletions
+25 -9
View File
@@ -1,11 +1,10 @@
#!/usr/bin/env bash
# Стандартные git remote: home, kalinamall, github.
# Стандартные git remote: home (papatramp), kalinamall, github (PTah).
set -euo pipefail
OWNER="${OWNER:-PapaTramp}"
GITHUB_ORG="${GITHUB_ORG:-PTah}"
REPO="${REPO:-}"
SKIP_KALINAMALL="${SKIP_KALINAMALL:-0}"
WHAT_IF="${WHAT_IF:-0}"
log_step() { printf '[*] %s\n' "$1"; }
@@ -17,14 +16,23 @@ if ! git rev-parse --is-inside-work-tree >/dev/null 2>&1; then
fi
repo_name="${REPO:-$(basename "$(git rev-parse --show-toplevel)")}"
home_url="ssh://git@git.papatramp.lan:2222/${OWNER}/${repo_name}.git"
kalinamall_url="ssh://git@git.kalinamall.lan:2222/${OWNER}/${repo_name}.git"
home_url="ssh://git@git.papatramp.ru:2222/${OWNER}/${repo_name}.git"
kalinamall_url="ssh://git@git.kalinamall.ru:2222/${OWNER}/${repo_name}.git"
github_url="git@github.com:${GITHUB_ORG}/${repo_name}.git"
origin_remote_target() {
local url
url="$(git remote get-url origin 2>/dev/null | tr '[:upper:]' '[:lower:]' || true)"
[[ -z "$url" ]] && return 0
if [[ "$url" == *kalinamall* ]]; then echo kalinamall; return 0; fi
if [[ "$url" == *papatramp* ]]; then echo home; return 0; fi
if [[ "$url" == *github.com* ]]; then echo github; return 0; fi
}
set_remote() {
local name="$1"
local url="$2"
local existing current old
local existing current old origin_target
if [[ "$WHAT_IF" == '1' ]]; then
log_step "WhatIf: remote $name -> $url"
@@ -42,9 +50,19 @@ set_remote() {
return 0
fi
if git remote | grep -Fxq origin; then
origin_target="$(origin_remote_target || true)"
if [[ "$origin_target" == "$name" ]]; then
git remote rename origin "$name"
git remote set-url "$name" "$url"
log_ok "remote origin renamed to $name -> $url"
return 0
fi
fi
case "$name" in
home) legacy=(gitea papatramp origin-home) ;;
github) legacy=(origin) ;;
github) legacy=() ;;
kalinamall) legacy=(gitea-kalinamall kalina) ;;
*) legacy=() ;;
esac
@@ -64,10 +82,8 @@ set_remote() {
log_step "Repo: $repo_name"
set_remote home "$home_url"
set_remote kalinamall "$kalinamall_url"
set_remote github "$github_url"
if [[ "$SKIP_KALINAMALL" != '1' ]]; then
set_remote kalinamall "$kalinamall_url"
fi
printf '\n'
git remote -v