SSH na GitHubie – kilka pytań

0

Cześć!
Mam parę pytań odnośnie tego "jak działa" SSH na GitHubie. Wcześniej klonowałem swoje projekty z Gihuba za pomocą https. Aby wrzucać tam commity, musiałem zalogować się na konto githuba w systemie (menadżer poświadczeń na Windowsie).

  • gdy wygeneruję klucz ssh na kompie i dodam go na stronie githuba, to już nie muszę się logować w systemie na konto githuba?
  • Gdy wygeneruję dwa klucze, jeden defaultowy, a drugi nazwany "drugim", oraz gdy jeden podepnę do jednego konta na githubie, a drugi do drugiego konta (cały czas mowa o jednym komputerze), to jako kto będę wrzucał commity na oba konta?
1

Jeślie nie podasz ścieżki do klucza prywatnego do aplikacji ssh to ssh poszuka sobie w domyślnym położeniu. Klucz użyty przez ssh podczas łączenia się z GitHubem musi być taki jaki GitHub oczekuje. Jeśli chcesz użyć klucza innego niż domyślny w ssh jest przełącznik -i: https://www.cyberciti.biz/faq/force-ssh-client-to-use-given-private-key-identity-file/

Powyższa porada dotyczy oczywiście aplikacji ssh takiej jaka siedzi w Linuksach (ale można ją znaleźć oczywiście i gdzie indziej).

0

Ok, dzięki za link.
Tzn w przypadku githuba powinienem skonfiugorawć plik config w taki sposób?

#domyslne konto (FirstAccount) na github.com
Host github.com
	HostName github.com
	User git
	IdentityFile .ssh/id_rsa

#SecondAccount na github.com
Host github.com-SecondAccount
	HostName github.com
	User git
	IdentityFile .ssh/SecondAccount

Via: https://code.tutsplus.com/tutorials/quick-tip-how-to-work-with-github-and-multiple-accounts--net-22574

1

Wg twojego linku może tak być. Tylko potem musisz pamiętać by sobie podmienić hosta w linkach które generuje GitHub.

0

Tzn
[email protected]:SecondAccount/projekt.git zamiast standardowego [email protected]:SecondAccount/projekt.git ?

1

No tak wynika z artykułu. Sam nie testowałem, bo nie miałem potrzeby.

1
  1. Nie, nie musisz się dodatkowo logować. Logujesz się właśnie kluczem prywatnym zamiast hasłem.
  2. Tu są dwie osobne kwestie:
  • jako kto będziesz zalogowany: jako konto, którego klucza prywatnego używasz
  • jako kto wrzucisz kod: jako osoba, która jest w Twoim obecnym Git identity: git config --get user.email oraz git config --get user.name
0

Dzięki @hauleth - wszystko działa tak jak mówisz. Rozwiałeś moje wątpliwości :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1