-
Notifications
You must be signed in to change notification settings - Fork 0
Workflow
Workflow, czyli styl pracy w naszym wypadku grupowej, jakiego narazie będziemy się trzymać profejsonalnie nazywa się "fork + pull". Co to oznacza i jak to działa postaram się opisać na tej stronie jednakże polecam zapoznać się z tym w razie niejasności bardziej szczegółowo na własną rękę.
Aby dało się cokolwiek robić trzeba mieć konto na github.com. Jeżeli posiadamy konto to wtedy wchodzimy pod adres: JSerialize repo czyli na nasze repozytorium i odszukujemy przycisku fork (trzeba być zalogowanym), który znajduje się gdzieś u góry po prawej stronie. Po kliknieciu fork wyskoczy okienko -> wybieramy siebie. Dla ułatwienia screen z google:
Co właściwie robi fork? Otóż kopiuje repozytorium w wyniku czego na swoim koncie posiadamy jego kopie na której będziemy pracować.
Jeżeli mamy już kopię na swoim koncie trzeba ustawić sobię do niej dostęp z poziomu naszego komputera a do tego potrzebny będzie klucz SSH, który trzeba dodać samemu we własnych ustawieniach konta na github.com. Poniżej screeny pokazujące mniej więcej gdzie to jest. Jeżeli chodzi i generowanie klucza to każdy powinien sobie już z tym poradzić.
Jeżeli już mamy zagwarantowany dostęp można pobrać swoje repozytorium na dysk lokalny gdzie lokalnie będziemy nad tym pracować, czyli w konsoli git bash albo cmd albo jak kto ma ustawione:
UWAGA! Usunac stary folder JSerialize jezeli jest w tym samym miejscu
- git clone [email protected]:TWOJA_NAZWA_UZYTKOWNIKA_GITHUB/JSerialize.git
Pozostaje jeszcze dodać repozytorium oryginalne, z którego będziemy pobierać najnowsze zmiany dokonane np. przez innych w teamie, czyli:
UWAGA! Trzeba byc w folderze JSerialize
- git remote add --track master JSerialize [email protected]:exesoft/JSerialize.git
W dalszej części będzie przykład użycia.
Jak będzie wyglądać codzienna praca? Mając swoje repozytorium lokalnie wprowadzamy zmiany do plików tj. piszemy kod, poprawiamy błędy itp i jeżeli postanowimy, że zmiany w jakimś sensie powinny się znaleźć w głównym repozytorium powinniśmy podjąć następujące kroki:
- Uaktualniamy swoje lokalne repo z oryginalnym zdalnym repo wrazie gdyby nasze było notuptodate
- git fetch JSerialize
- git merge JSerialize/master
- Za'commit'ować lokalne zmiany
- git commit -a -m "Tresc odnoszaca sie do zmian"
- Za'push'ować na swoje zklonowane repozytorium
- git push
- Skorzystać z narzędzia 'pull request' na stronie github.com. Tak więc wchodzimy pod adres głównego repozytorium JSerialize repo. Klikamy pull request i po prawej stronie z rozsuwanej listy wybieramy nasze zforkowane repo (w moim przypadku karolk91/JSerialize). Screen dla przykładu: