Git Extensions + Github – konfiguracja

Skonfigurowanie Git Extensions tak aby współpracowało z Githubem nie jest trudne ale są co najmniej dwie rzeczy, które osobie początkującej z Gitem i Githubem mogą przysporzyć problemów.

Jeśli mamy stworzone repozytorium na Githubie i zainstalowane lokalnie Git Extensions, to pierwsze co trzeba zrobić, to sklonować zdalne repozytorium do lokalnego katalogu – z menu należy wybrać Start->Clone repository…. W okienku, które się pojawi trzeba podać kilka kluczowych informacji:

GitExtensionsClone

„Repository to clone” to adres zdalnego repozytorium do sklonowania. Informację tę można znaleźć na stronie repozytorium w Githubie:

GithubRepoAdress.

Można kliknąć przycisk „Copy to clipboard” i adres wkleić w odpowiednie pole w okienku.

Pole „Destination” to ścieżka do lokalnego katalogu gdzie ma być umieszczone repozytorium. „Subdirectory to create” to nazwa podkatalogu, do którego repozytorium zostanie skopiowane. W polu „Branch” należy wskazać gałąź, którą chcemy sklonować – w przypadku nowego repozytorium najczęściej będzie to master.

Teraz rzecz najważniejsza – należy załadować klucz SSH, który będzie używany do połączenia z Githubem. Jeśli nie mamy takiego klucza to można go wygenerować na przykład za pomocą narzędzia puttygen.exe, które można znaleźć w katalogu C:\Program Files (x86)\GitExtensions\PuTTY.

puttygen1

Należy kliknąć „Generate” i poruszać myszką w pustym polu aż pojawi się wygenerowany klucz. Klucz publiczny (ten najdłuższy ciąg znaków) trzeba skopiować i dodać w Githubie na stronie Settings->SSH Keys. Klucz prywatny natomiast trzeba zapisać na dysku klikając w „Save private key” i tak zapisany plik załadować w oknie klonowania repozytorium w Git Extensions klikając „Load SSH key”. W tym momencie pozostaje już tylko kliknąć „Clone” i mamy naszą lokalną kopię zdalnego repozytorium i jesteśmy gotowi do pracy i pierwszych commitów.

Po commicie warto wysłać zmiany do Githuba (push) i tutaj czai się druga pułapka, której rozbrojenie zajęło mi chwilę czasu. Otóż może okazać się, że Github nie rozpoznaje naszego użytkownika w pushowanym commicie. W takim wypadku należy sprawdzić czy adres e-mail wprowadzony w Git Extensions (Tools->Settings->Git Config->User email) jest skojarzony z naszym kontem na Githubie. Można to zrobić wchodząc w Settings->Emails gdzie można zarządzać adresami skojarzonymi z kontem. Adres e-mail nie musi być zweryfikowany a Github i tak powinien prawidłowo rozpoznawać naszego użytkownika w pushach.