tBane Temat założony przez niniejszego użytkownika |
GitHub - Praca w kilku » 2024-11-24 18:17:00 Witam. Pierwszy raz pracuję z kimś wspólnie na GitHubie. Nie wiem za bardzo co i jak, tzn jak dzielić pracę z innymi użytkownikami, tak żeby nie skasować kodu. Czy jeden użytkownik na raz może tworzyć kod ? Jak pobierać zaktualizowany kod z GitHuba (umiem tylko updatewoć kod na Git) ? Jakieś rady co do Githuba ?
|
|
pekfos |
» 2024-11-24 18:44:59 Naucz się mergować zmiany i załatwione. To jest najtrudniejsze i potrafi prowadzić do błędów, więc następnym krokiem jest unikanie tego. Miej jakiś sposób komunikacji z zespołem, niech to nawet od biedy będzie github issues, i tak zarządzaj pracą by minimalizować kolizje. Gdy w projekcie jest dość kodu, stosunkowo łatwo o zadania które nie zazębiają się. Deweloperzy mogą pracować na osobnych branchach i doprowadzenie do poprawnego, automatycznego merge można zrzucić na ich odpowiedzialność. Tzn robią zmiany w branchu dedykowanym na konkretny feature, jak uznają zadanie za gotowe to robią pull request i możesz sobie przejrzeć co zrobili w kodzie, zgłosić uwagi albo zrobić merge, przy czym na githubie to chyba musi być automatycznie mergowalne, deweloper musi zapewnić brak konfliktów po stronie swojego brancha. No i zawsze jak siadasz do pracy to zaciągnij zmiany z repo, to przydatny nawyk do wyrobienia sobie. Oszczędza rozwiązywania konfliktu Twojej zmiany z dziś, z czyjąś zmianą sprzed paru dni. |
|
tBane Temat założony przez niniejszego użytkownika |
» 2024-11-24 18:59:04 Czyli jak rozumiem, nie można jednocześnie w tym samym momencie programować ? |
|
pekfos |
» 2024-11-24 19:05:17 Można. To jest cały powód używania systemu kontroli wersji zamiast (samych) backupów. |
|
tBane Temat założony przez niniejszego użytkownika |
» 2024-11-24 19:09:18 Czyli wystarczy ustalić, że w danym momencie użytkownik x pracuje nad plikiem y i wtedy nikt poza nim nie rusza tego pliku. Następnie wystarczy po prostu pushować projekt i jest zaktualizowane ? |
|
pekfos |
» 2024-11-24 19:17:07 Nie musisz niczego ustalać. Jeżeli w tym samym czasie deweloperzy A i B postanowią zrobić zmiany (w tym samym czasie więc na podstawie tej samej rewizji na repo) i A wrzuci zmiany pierwszy, to B musi swoje zmiany zmergować ze zmianami A. Git zrobi to automatycznie, chyba że będzie konflikt (np zmienicie tą samą linię kodu na różne sposoby) i wtedy B musi to ręcznie rozwiązać i poprawioną wersje wrzuca na repo. Nawet jak uda się automatyczny merge, to nie ma wcale gwarancji że program się skompiluje, albo będzie działać poprawnie, niezależnie od tego jak dobrze się z kimś umówisz. Gdy B robi merge, wypada żeby co najmniej sprawdził czy jego feature dalej działa poprawnie i odpalił testy automatyczne, jeśli jakieś są. Nie wiem kogo tam znalazłeś do pracy, więc może zacznij od organizacji pracy typu branch i pull request. Nie będziesz mieć problemów że ktoś wcommituje work in progress przez co projekt nie będzie się chwilowo kompilować. |
|
tBane Temat założony przez niniejszego użytkownika |
» 2024-11-24 19:31:23 Jak działa to mergowanie ? |
|
pekfos |
» 2024-11-24 19:40:50 |
|
« 1 » 2 |