GitHub - kodowanie społecznościowe
Pierwszy wpis z miniserii o kontroli wersji naszego kodu (GIT - łatwy system kontroli wersji) pojawił się już jakiś czas temu, a więc najwyższy czas kontynuować wątek. Co prawda nie ma to bezpośredniego związku z językiem Javascript lub z tworzeniem gier w tym języku, jednak pośrednio ma ogromny. To właśnie w tym serwisie znaleźć można dużą ilość interesujących projektów, bibliotek czy narzędzi. Warto się nimi zainteresować, warto zaglądać im w źródła, warto wspierać twórców i wysyłać im swoje poprawki. Zobaczmy więc, jak się do tego zabrać.
Oczywiście podajemy nasz własny adres email - najlepiej ten, na który zarejestrowaliśmy się w serwisie. Potwierdzamy stworzenie nowego klucza wciskając Enter. Nasza para - klucz publiczny i prywatny zostały stworzone. Teraz wystarczy odnaleźć wygenerowany przed chwilą plik z kluczem publicznym (PLIK.pub), skopiować jego zawartość, przejść na stronę ustawień SSH, kliknąć "Add another public key" i wkleić nasz klucz, przy okazji nadając mu dowolnie wybraną nazwę. Potwierdzamy, zapisujemy i gotowe - możemy publikować nasz kod.
Dzięki tym poleceniom utworzymy na dysku w danym miejscu folder o nazwie naszego projektu, wejdziemy do niego, zainicjujemy GITa, stworzymy plik README, dodamy go do wysłania i zatwierdzamy z odpowiednim komentarzem. Następnie dodajemy ścieżkę do naszego źródła na serwerze (zamieniając USER na naszą nazwę użytkownika), a następnie wysyłamy kod na serwer za pomocą polecenia push. Gotowe, właśnie wysłaliśmy nasz pierwszy kawałek kodu do serwisu GitHub!
Jeśli natomiast chcemy pokazać światu nasz kod, który stworzyliśmy wcześniej na naszym komputerze, wystarczy wpisać poniższe polecenia w konsoli:
Wchodzimy do folderu z projektem, inicjujemy połączenie z repo na serwerze i wysyłamy tam kod źródłowy. Gotowe, nasz wspaniały projekt jest już dostępny publicznie!
Seria: GIT i GitHub
Jeśli nie wiesz czym jest GIT, to zajrzyj do poniższego, pierwszego wpisu z tej miniserii. Aktualny wpis jest drugim z trzech na temat GITa jako takiego, serwisu społecznościowego GitHub oraz instalacji i zarządzania projektami na własnym serwerze. Poniżej znajdą się linki do wszystkich trzech wpisów, w miarę ich pojawiania się na blogu:1/3 | GIT tutorial (GIT - łatwy system kontroli wersji)
2/3 | Serwis GitHub (GitHub - kodowanie społecznościowe)
3/3 | GIT na serwerze
Zakładanie konta
Zabawę z serwisem należy rozpocząć od rejestracji - wystarczy odwiedzić adres https://github.com/signup/free i wypełnić formularz. Po chwili mamy już aktywne konto, dzięki któremu będziemy mogli tworzyć własne repozytoria, a także przeglądać i edytować inne. Wybrane konto jest darmowe, a więc nasze projekty będą typu Open Source i będą publicznie dostępne dla wszystkich odwiedzających. Jeśli natomiast zależy nam bardzo na ukryciu naszego (być może komercyjnego) projektu, można wybrać płatne konto, lub... poczekać na trzeci wpis miniserii, w którym pokażę jak uruchomić system kontroli wersji na własnym serwerze.Konfiguracja wstępna
Ok, założyliśmy sobie konto i zostaliśmy automatycznie zalogowani. Co teraz? Możemy zacząć przeglądać repozytoria innych użytkowników serwisu, możemy także zająć się publikacją naszego kodu. Aby tego dokonać, klikamy na "New repository", dzięki czemu naszym oczom ukaże się formularz dodania nowego repozytorium. Wypełniamy pola wpisując odpowiednio nazwę projektu, opis oraz adres internetowy strony domowej projektu. Dwa ostatnie pola są opcjonalne, a więc wystarczy nam nawet sama nazwa. Załóżmy nowe repo o nazwie "SuperProjekt". Po kliknięciu "Create repository" zostaniemy przeniesieni na stronę projektu, gdzie naszym oczom ukaże się strona z pomocą, dzięki której przejdziemy krok po kroku przez etapy konfiguracji wstępnej. Najpierw potrzebujemy dodać nasz klucz publiczny, dzięki czemu podczas publikowania kodu GitHub będzie wiedział, że my, to my.Generowanie klucza publicznego
Uruchamiamy konsolę i wpisujemy do niej:ssh-keygen -t rsa -C "adres@email.pl"
Oczywiście podajemy nasz własny adres email - najlepiej ten, na który zarejestrowaliśmy się w serwisie. Potwierdzamy stworzenie nowego klucza wciskając Enter. Nasza para - klucz publiczny i prywatny zostały stworzone. Teraz wystarczy odnaleźć wygenerowany przed chwilą plik z kluczem publicznym (PLIK.pub), skopiować jego zawartość, przejść na stronę ustawień SSH, kliknąć "Add another public key" i wkleić nasz klucz, przy okazji nadając mu dowolnie wybraną nazwę. Potwierdzamy, zapisujemy i gotowe - możemy publikować nasz kod.
Publikowanie projektu w serwisie
Mamy już klucz publiczny, zabierzmy się za najciekawsze - interakcję z serwisem. Jeśli nasz SuperProjekt jest nowym projektem, należy go stworzyć:mkdir SuperProjekt cd SuperProjekt git init touch README git add README git commit -m 'first commit' git remote add origin git@github.com:USER/SuperProjekt.git git push -u origin master
Dzięki tym poleceniom utworzymy na dysku w danym miejscu folder o nazwie naszego projektu, wejdziemy do niego, zainicjujemy GITa, stworzymy plik README, dodamy go do wysłania i zatwierdzamy z odpowiednim komentarzem. Następnie dodajemy ścieżkę do naszego źródła na serwerze (zamieniając USER na naszą nazwę użytkownika), a następnie wysyłamy kod na serwer za pomocą polecenia push. Gotowe, właśnie wysłaliśmy nasz pierwszy kawałek kodu do serwisu GitHub!
Jeśli natomiast chcemy pokazać światu nasz kod, który stworzyliśmy wcześniej na naszym komputerze, wystarczy wpisać poniższe polecenia w konsoli:
cd SuperProjekt git remote add origin git@github.com:USER/SuperProjekt.git git push -u origin master
Wchodzimy do folderu z projektem, inicjujemy połączenie z repo na serwerze i wysyłamy tam kod źródłowy. Gotowe, nasz wspaniały projekt jest już dostępny publicznie!
Praca z repozytorium
Podczas normalnej pracy z projektem stosujemy standardowe polecenia GITa wymienione w poprzednim wpisie. Jeśli chcemy opublikować nasze zmiany w serwisie, po prostu korzystamy ze wspomnianego wyżejgit push -u origin master
. Jeśli natomiast wysłaliśmy kod z innego komputera (lub edytowaliśmy źródła bezpośrednio na stronie GitHub, co także jest możliwe) i teraz chcielibyśmy pobrać zmiany, to wystarczy skorzystać z polecenia git pull origin master
.Fork i Pull request
Poznaliśmy już podstawy jeśli chodzi o nasz kod w GitHub. Co, jeśli chcielibyśmy zainteresować się cudzym projektem? Jeśli znaleźliśmy ciekawy kawałek kodu, który chcielibyśmy usprawnić? Od tego jest "Fork" - przycisk, który kopiuje dane repozytorium do naszej kolekcji i umożliwia nam na nim normalną edycję. Jak już wprowadzimy nasze zmiany na komputerze, a także opublikujemy kod w naszej kopii danego projektu, warto dać znać autorowi oryginału o tym, że chcielibyśmy dodać też coś od siebie. Do tego posłuży nam "Pull request", ale to za chwilę. Warto sprawdzać na bieżąco, czy ktoś w międzyczasie nie wprowadził zmian w oryginalnym projekcie, przez co nasza kopia jest już nieaktualna. Do pobierania zmian służy poleceniefetch
- to polecenie, jak i cały mechanizm "Fork" jest dokładnie opisany w tym artykule GitHubowej pomocy. Natomiast jeśli chodzi o "Pull request", to jest to po prostu wysłanie swoich zmian do autora oryginalnego projektu. Może on zdecydować o tym, czy użyje polecenia merge
do pobrania i złączenia Twoich zmian z projektem, czy jednak je odrzuci lub po prostu zignoruje.
1Łukasz Lipiński dnia 08.08.2011 o 20:55: