Praca zdalnie stała się znacznie bardziej powszechna w rozwoju sieci Web w ciągu ostatnich kilku lat. Przed kontrolą wersji, praca zdalnie w tym samym projekcie rozwoju byłaby absolutnym koszmarem. Deweloperzy musielibyśmy Wyślij duże pliki. do siebie (prawdopodobnie przez e-mail), wklejając własny kod przed wysłaniem go. Nie było prawdziwego sposobu śledzenia tego, co zostało dodane i kiedy.
Na szczęście, kontrola wersji przybyła i dokonała rozwoju na wszystkich frontach znacznie bardziej zarządzać. Projekty internetowe stają się znacznie łatwiejsze do wdrożenia i zarządzania, zwłaszcza jeśli chodzi o pracę w zespole zdalnego rozwoju. Nie musisz już martwić się o bieżącą wersję strony internetowej, która jest nadpisana - każdy członek zespołu jest bezpłatny do pracy nad dowolnym plikiem w dowolnym momencie, nie ma zamieszania, gdzie jest najnowsza wersja pliku jest przechowywana - i górna magazyn w chmurze Pomaga też w procesie.
W tym samouczku, używamy Github zarządzać naszym kodem. Istnieje wiele różnych typów narzędzi do kontroli wersji, takich jak BitBucket i TFVC, ale nawet jeśli wszystkie są różne, zasady pozostają takie same, jeśli chodzi o kod zarządzający.
Więcej sposobów ułatwia proces budowy witryny, zobacz nasze przewodniki na górę Kreator strony internetowej i hosting usługa.
Po pierwsze, bardzo ważne jest, aby uzyskać udany model rozgałęziony podczas pracy w dowolnym zespole, aby uczynić proces rozwojem i wdrażania przebiegają płynnie. Najprawdopodobniej będziesz miał wielu programistów pracujących nad tym samym projektem. Podczas pracy ze zdalnym siłą roboczą uważam, że najlepszy przepływ pracy składa się z trzech głównych gałęzi, a także zestawu tymczasowych:
Będzie również zestaw oddziałów funkcyjnych. Jednakże będą one po prostu tymczasowe, aby początkowo budować nowe funkcje.
Załóżmy, że prowadzisz zespół z dwoma deweloperami, którzy pracują zdalnie. Zadzwonimy do nich Sarah i James: Oboje pracują na tej samej stronie internetowej e-commerce dla klienta. Sarah musi opracować funkcję, która rejestruje dane klientów.
Złamamy to na trzy oddzielne historie użytkowników - dodawanie, edycję i usunięcie - a następnie dodaj te trzy bilety do opadów Sprint.
Powiedzmy, że Sarah zaczyna się od dodanej sekcji Szczegóły klienta. Musiałoby stworzyć oddział funkcji "Szczegóły klienta" i historię użytkownika na pierwszy zadanie "Dodatki".
Git Checkout Develop & AMP; & Amp; Git Pull Origin / Develop
Git Checkout -b Feature / Customer-Details
Git Checkout -B Dodaj - szczegóły
Sarah będzie nadal pracować nad tymczasowym oddziału "Add-Add-Add-Add-Add-Add-Add-Add-Add-Add-Add-Add-Add-Add-Add-Add-Add-Add-Add-Add-Add-Add-Add-Add-Adres". Powiedzmy, że James chce pomóc Sarahowi z funkcją szczegółów klienta, więc zaczyna pracować nad delecją szczegółów.
James wyciągnął ostatnią wersję wspólnej gałęzi i stworzy nową oddział dla historii użytkownika "Usuń szczegóły". Potem może zacząć robić własne dodatki, nie martwiąc się o nadpisanie kodu Sary.
Funkcja Git Checkout / Szczegóły klienta
Git Pull Origin / Feature / Customer-Details
Git Checkout -B Usuń - szczegóły
Użyje również jego tymczasowego oddziału do lokalnego kodu i popełnić wszelkie zmiany. Gdy Sarah skończyła swoją funkcję lokalnie, kładzie bilet do przeglądu kodu. Pchnie jej kod do gałęzi inscenizacji i otwórz żądanie pull z otoczeniem inscenizacyjnym.
// ona popycha swój kod do gałęzi inscenizacji
Git Push Origin Dodatki
// Otwiera żądanie pull z otoczeniem inscenizacyjnym
Git-Pull Studing Dodatki
Mamy teraz branżę funkcji Szczegóły klienta, a dwaj historia użytkownika oddziałów w rozwoju "Dodatki" i "Usuń szczegóły".
Gdy jej kod został sprawdzony, może scalić jej oddział na inscenizację. Bilet jest teraz w kolumnie walidacyjnej, czekając na walidację od dewelopera.
// dostaje ostatnią wersję gałęzi inscenizacji
Git Checkout Stage & AMP; & Amp; Git Pull Origin / Insceding
Git Serge Add-Details & AMP; & AMP; git push pochodzenie inscenizacji
// Buduje środowisko walidacyjne
// i prosi właściciela produktu, aby potwierdzić
Po zatwierdzeniu pracy Sarah bilet można przenieść do kolumny gotowej. Może scalić swoją pracę do oddziału funkcji i rozpocząć kolejną historię użytkownika, jak usunięcie danych klientów.
// wyciąga ostatnią wersję oddziału funkcji
Funkcja Git Checkout / Szczegóły klienta
Git Pull Origin Funkcja / Szczegóły klienta
Git Serge Add-Add-Add-Add-Add-Address & AMP; Git Push pochodzenia Funkcja / Szczegóły klienta
Gdy cała funkcja została zatwierdzona zarówno przez deweloper, jak i klient, Sarah może łączyć oddział funkcji do rozwoju, ponieważ jest gotowy do pracy.
// dostaje ostatnią wersję opracowywania gałęzi
Git Checkout Develop & AMP; & Amp; Git Pull Origin / Develop
Git Merge Feature / Customer-Details & AMP; & AMP; Rozwijaj pochodzenie Push Git
Po zakończeniu i jest gotowy do wdrożenia w produkcji, James łączy się rozwijać i wprowadza wdrażanie. W tym momencie wiedziałby, że cały kod jest poprawny, a klient jest szczęśliwy. Znaczają zatwierdzenie wydania, aby uzyskać historię każdej wersji.
Git Checkout Develop & AMP; & Amp; Git Pull Origin / Develop
Git Casout Release & AMP; & AMP; Wyciągnij pochodzenie / wydanie
Git Merge Develop & AMP; & AMP; git tag 2.1.
Git Push Origin Release --Tags
Ten zdalny przepływ pracy może być bardzo trudny do zrozumienia, ale jeśli dostaniesz zespół do pracy przez tę metodę, masz bezpłatny przepływ roboczy bez konieczności paniki o nadpisywaniu plików lub programistów pracujących na tym samym obszarze.
Są kilka kluczowych rzeczy do zapamiętania:
Git Co Develop & AMP; & AMP; Git Pull Origin / Develop
git branch -d insceniging & amp; & amp; Git Push pochodzenie --Delete inscenizacja
Git CO -B Stage & AMP; & AMP; Git Pull Origin Songaging
Z mniejszymi projektami możesz użyć mniej złożonego przepływu pracy. Możesz użyć Master, który zawiera najbardziej aktualną wersję, oddział opracowywania, a następnie zestaw oddziałów dla każdej dodatkowej funkcji - czy to forum, formularz kontaktowy, system kasowy. Wszystko zależy od twoich osobistych preferencji.
Radzenie sobie z konfliktami scalonymi jest wystarczająco trudne, jeśli wszyscy pracujesz w tym samym pokoju, ale mogą stać się jeszcze bardziej koszmar, jeśli wszyscy pracujesz w innym biurze. Najważniejszą rzeczą jest pamiętać, że zawsze możesz cofnąć scalanie i powrócić do stanu przed wystąpienie konfliktu.
Niezależnie od tego, czy robisz wszystkie łączenia jako deweloper, czy twój zespół są tymi, które robią je niezależnie, pierwszym krokiem jest zrozumienie, co się stało.
Git powie ci, że masz Nieostrożne ścieżki przez status git. :
Status $ Git
# Na oddziałowym systemie
# Masz niezmienione ścieżki.
# (popraw konflikty i uruchom "git commit")
#
# Nieostanowane ścieżki:
# (Użyj "Git Dodaj i ...", aby zaznaczyć rozdzielczość)
#
# Zmodyfikowane: Checkout.html
#
Nie dodano żadnych zmian do zatwierdzenia (użyj "git dodaj" i / lub "git commit -a")
Teraz najczęstszą przyczyną konfliktu jest wtedy, gdy zmiany wpływają na te same pliki w tej samej linii. Spójrzmy więc na zawartość konfliktowej linii. Zauważysz, że git jest naprawdę dobry w fakcie, że zaznaczy to konflikt, otaczając go i LT; & LT; & LT; & LT; i & GT; & GT; & GT; & GT; & GT; & GT / Nazwa] . W takim przypadku jest kasa-system .
& LT; & LT; GŁOWA
Ta linia została popełniona podczas pracy w branży "Formularz użytkownika".
=======.
Ta linia, w przeciwieństwie temu, została popełniona podczas pracy w branży "Zamówienie".
& gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt Refs / Heads / Casout-System
Zawartość po pierwszym znaczniku pochodzi z bieżącego oddziału roboczego. Po nawiasach kątowych, Git mówi nam, która oddział pochodziły zmiany. Linia z =======. oddziela dwa sprzeczne zmiany.
Możesz teraz po prostu otworzyć plik w edytorze, wyszukaj znaczniki konfliktów i wprowadzić niezbędne modyfikacje. Kiedy skończysz, plik musi wyglądać dokładnie tak, jak chcesz wyglądać lub, alternatywnie możesz powiedzieć, że będziesz po prostu idziesz z jedną z edytowanych wersji, zwanych nasz lub ich .
Git Checkout - Można ścieżka / do / konflikt-file.html
Istnieje również wiele aplikacji narzędziowych, które mogą w tym pomóc. Kalejdoskop jest świetną dla Mac.
Jest równie ważny, jak deweloper ma narzędzie do zarządzania projektami do zarządzania rzeczami takimi jak zadania i błędy, zwłaszcza gdy twoi deweloperzy nie są oparte na biurze. Istnieje wiele rozwiązań, takich jak Zenhub i Aguna, ale wierzę, że wbudowany projekt Github jest najlepszy.
Możesz robić takie jak ustawić nowy projekt, tworzyć tablice lub przypisać problemy. I nie tylko mylić problemy z problemami: Możesz także użyć go do ulepszeń, pytań i błędów, między innymi.
Oto kilka najlepszych funkcji:
Jeśli przejdziesz do Githuba, a następnie udaj się do jednego z twoich repozytoriów, zobaczysz kartę, która nazywana jest projektami. Stamtąd możesz wybrać nowy projekt, skonfiguruj swoje dane projektu i utworzyć nowy szablon projektu.
Jeśli teraz wybierzesz kartę problemów, która jest wzdłuż górnej i wybierz Nowy problem, będziesz mógł utworzyć nowy problem. Następnie możesz zastosować różne etykiety - to takie rzeczy jak błąd, wzmocnienie, pytanie i duplikaty. Możesz także użyć wzmocnienia nowej funkcji lub żądania. Następnie możesz przypisać różnych członków zespołu do zadania, kamień milowy, a także projekt, który właśnie stworzyłeś.
Przypisani członkowie będą mieli listę wszystkich ich zadań, a nawet użyjesz tablicy projektu, aby utrzymać utwór, który jest obecnie budowany. Jeśli pamiętasz nasze wcześniejszy samouczek, rozmawialiśmy o przeprowadzce biletów na sprint zaległości i walidacja. Tak więc Github działa naprawdę dobrze jako narzędzie do nadzorowania projektu.
Ten artykuł został pierwotnie opublikowany w wydaniu 311 z netto , Najlepiej sprzedający się magazyn na świecie dla projektantów stron internetowych i programistów. Kup problem 311 tutaj lub Subskrybuj tutaj .
Powiązane artykuły:
(Kredyt obrazu: przyszłość) Zmienne czcionki umożliwiają projektantom czcionki do definiowania różnic typu w s..
Studiowałem sztukę piękną i Techniki malowania I przez długi czas był całkowicie przeciwko pomysłem cyfrow..
Podczas tworzenia wizualizacji architektonicznej musisz reprezentować wiele szczegółów, a jednym z najbardziej czasochłonnyc..
Guasz jest bardziej wybaczający niż farba akwarelowa, ale decyzje, które wprowadzasz wcześnie, może nadal wpływać na reszt..
W tym krótkim Samouczek Illustrator. , projektant Będzie Paterson. Przechodzi przez to, jak stwor..
Jeśli chcesz wykonać prysznic Meteor 3D dla sceny lub projektu, możesz łatwo renderować fotorealistyczne prysznic meteor w d..
Pokazać budowę stworzenia w Zbrush, używam tego kawałka 3d art. Pracuję nad, zaprojektowany przez Cre..
Kiedy pracujesz w małym zespole, trudno jest napisać i utrzymywać oddzielny kod dla Androida, iOS i okien. Tam pojawiają się..