Zdalne repozytorium Git na Mikrusie i innych VPS
Najlepiej dla każdego projektu robić usera. Wtedy gdy musisz udostępnić komuś swoje repo udostępniasz tylko tego jednego usera, a nie usera, na którym są wszystkie repo tu już wybór dla Ciebie.
VPS
Wszystkie projekty na jednym userze
git init --bare project1/project1.git
git init --bare project2/project2.git
git init --bare project3/project3.git
Moja propozycja zrobić oddzielnego usera na każdy projekt.
sudo ./noobs2/noobs/actions/chce_usera.sh
su userproject1
git init --bare project1.git
Klient
lepiej używać kluczy, a nie hasła więc
https://www.notion.so/U-ywaj-kluczy-SSH-219e41e344a74dd9a054c343f774a312
Kroki opcjonalne
Tworzysz klucz:
Kopiujesz na VPSa tak:
lub ręcznie dodajesz do
~/.ssh/authorized_keys
tworzysz ssh config, aby łatwiej korzystać, nie myśleć o portach userach itd.
Szybsze rozwiązanie
Wszystkie te kroki dla klienta można zastąpić tym jednym poleceniem
to Ci wygeneruje ssh config z hostem typu:
userproject1-srvX.mikr.us-NUMER_PORTU_SSH
więc trochę nie praktycznie, bo trzeba wpisywać
ssh userproject1-srvX.mikr.us-NUMER_PORTU_SSH
wiem, że można
ssh userproject1
[Tab] i pokaże resztę, ale to nadal upierdliwe więc jak w przykładzie ręcznym
nano .ssh/config
i zamienić:
Host userproject1-srvX.mikr.us-NUMER_PORTU_SSH
na
Host project1
czyli dostęp do usera projektu po ssh wygląda tak
a git do clonowania itp. itd.
Kilka projektów każdy na oddzielnym userze
to trzeba mieć do każdego ssh config
i używać tak
Wariant gdy wszystko na jednym userze
Tworzysz tylko jeden ssh config
i zamienić:
na wygodniejszy np.
i używać tak
jak robisz tylko dla siebie to na jednym userze będzie wygodniej i szybciej
dla zespołu lub gdy klientowi chcesz przekazać dostęp do ssh i git to wariant wiele userów
Uwaga! jak przekazujesz obcej osobie to trzeba zmodyfikować trochę ten wariant, bo chce_usera.sh robi usera z sudo a do oddania lepszy byłby zwykły user + najlepiej ssh jail, ale to już szeroki temat