Implementowanie przepływu pracy rozwidlenia

Ukończone

Rozwidlenie jest kopią repozytorium. Tworzenie rozwidlenia repozytorium umożliwia eksperymentowanie ze zmianami bez wpływu na oryginalny projekt swobodnie.

Najczęściej rozwidlenia są używane do zaproponowania zmian w projekcie innej osoby. Możesz też użyć projektu innego użytkownika jako punktu wyjścia dla twojego pomysłu.

Rozwidlenie to kompletna kopia repozytorium, w tym wszystkie pliki, zatwierdzenia i (opcjonalnie) gałęzie.

Rozwidlenia to doskonały sposób obsługi przepływu pracy źródła wewnętrznego: możesz utworzyć rozwidlenie, aby sugerować zmiany, gdy nie masz uprawnień do zapisywania w oryginalnym projekcie bezpośrednio.

Gdy wszystko będzie gotowe do udostępnienia tych zmian, możesz łatwo współtworzyć je z powrotem przy użyciu żądań ściągnięcia.

Co znajduje się w rozwidlu?

Rozwidlenie rozpoczyna się od całej zawartości repozytorium nadrzędnego (oryginalnego).

Możesz uwzględnić wszystkie gałęzie lub ograniczyć je tylko do gałęzi domyślnej podczas tworzenia rozwidlenia.

Żadne uprawnienia, zasady lub potoki kompilacji nie są stosowane.

Nowy rozwidlenie działa tak, jakby ktoś sklonował oryginalne repozytorium, a następnie wypchnął go do nowego, pustego repozytorium.

Po utworzeniu rozwidlenia nowe pliki, foldery i gałęzie nie są współużytkowane między repozytoriami, chyba że żądanie ściągnięcia będzie je przenosić.

Udostępnianie kodu między rozwidleniami

Żądania ściągnięcia można utworzyć w obu kierunkach: od rozwidlenia do nadrzędnego lub nadrzędnego rozwidlenia.

Najczęstszym podejściem będzie rozwidlenie do nadrzędnego.

Uprawnienia, zasady, kompilacje i elementy robocze repozytorium docelowego będą miały zastosowanie do żądania ściągnięcia.

Wybieranie między gałęziami i rozwidleniami

W przypadku małego zespołu (2–5 deweloperów) zalecamy pracę w jednym repozytorium.

Każdy powinien pracować w gałęzi tematu, a główny powinien być chroniony za pomocą zasad gałęzi.

W miarę jak twój zespół staje się bardziej znaczący, możesz się przekonać, że ten układ się zmienia i woli przełączyć się do rozwidłego przepływu pracy.

Zalecamy tworzenie rozwidlenia przepływu pracy, jeśli repozytorium ma wiele zwykłych lub rzadkich komitetów (takich jak projekt open source).

Zazwyczaj tylko współautorzy podstawowi projektu mają uprawnienia bezpośredniego zatwierdzania do repozytorium.

Pomoże to, jeśli poprosisz współpracowników spoza tego podstawowego zestawu osób do pracy z rozwidlenia repozytorium.

Ponadto, będzie odizolować ich zmiany od Twoich, dopóki nie miał szans na weryfikację pracy.

Przepływ pracy rozwidlania

  • Utwórz rozwidlenie.
  • Sklonuj go lokalnie.
  • Wprowadź zmiany lokalnie i wypchnij je do gałęzi.
  • Utwórz i ukończ żądanie ściągnięcia w górę.
  • Zsynchronizuj rozwidlenie z najnowszej wersji nadrzędnej.

Tworzenie rozwidlenia

  1. Przejdź do repozytorium do rozwidlenia i wybierz rozwidlenie.
  2. Określ nazwę i wybierz projekt, w którym ma zostać utworzony rozwidlenie. Jeśli repozytorium zawiera wiele gałęzi tematów, zalecamy rozwidlenie tylko gałęzi domyślnej.
  3. Wybierz wielokropek, a następnie rozwidlenie, aby utworzyć rozwidlenie.

Diagram przedstawiający tworzenie rozwidlenia.

Uwaga

Aby utworzyć rozwidlenie, musisz mieć uprawnienie Tworzenie repozytorium w wybranym projekcie. Zalecamy utworzenie dedykowanego projektu rozwidlenia, w którym wszyscy współautorzy mają uprawnienie Tworzenie repozytorium. Aby zapoznać się z przykładem udzielenia tego uprawnienia, zobacz Ustawianie uprawnień repozytorium Git.

Klonowanie rozwidlenia lokalnie

Gdy rozwidlenie będzie gotowe, sklonuj go przy użyciu wiersza polecenia lub środowiska IDE, takiego jak Visual Studio. Rozwidlenie będzie twoim źródłem zdalnym.

Dla wygody po sklonowaniu należy dodać repozytorium nadrzędne (gdzie rozwidlenie z) jako zdalne nazwane nadrzędne.

git remote add upstream {upstream_url}

Wprowadzanie i wypychanie zmian

Można pracować bezpośrednio w katalogu głównym — po tym wszystkim to rozwidlenie jest twoją kopią repozytorium.

Zalecamy jednak nadal pracę w gałęzi tematu.

Umożliwia jednoczesne utrzymywanie wielu niezależnych strumieni roboczych.

Ponadto zmniejsza pomyłek później, gdy chcesz zsynchronizować zmiany w rozwidleniu.

Wprowadź i zatwierdź zmiany w zwykły sposób. Po zakończeniu wprowadzania zmian wypchnij je do źródła (rozwidlenia).

Tworzenie i uzupełnianie żądania ściągnięcia

Otwórz żądanie ściągnięcia z rozwidlenia do nadrzędnego strumienia. Wszystkie zasady wymagane przez recenzentów i kompilacje zostaną zastosowane w repozytorium nadrzędnym. Po spełnieniu wszystkich zasad żądanie ściągnięcia można ukończyć, a zmiany stają się stałą częścią nadrzędnego repozytorium.

Diagram przedstawiający tworzenie i uzupełnianie żądania ściągnięcia.

Ważne

Każda osoba z uprawnieniem Odczyt może otworzyć żądanie ściągnięcia nadrzędnego. Jeśli skonfigurowano potok kompilacji żądania ściągnięcia, kompilacja zostanie uruchomiona względem kodu wprowadzonego w rozwidleniu.

Synchronizowanie rozwidlenia z najnowszą wersją

Po zaakceptowaniu żądania ściągnięcia do nadrzędnego punktu ściągnięcia należy upewnić się, że rozwidlenie odzwierciedla najnowszy stan repozytorium.

Zalecamy ponowne łączenie gałęzi głównej nadrzędnej (przy założeniu, że głównym elementem jest gałąź programowania).

git fetch upstream main
git rebase upstream/main
git push origin

Przepływ pracy rozwidlenia umożliwia izolowanie zmian z repozytorium głównego do momentu ich zintegrowania. Gdy wszystko będzie gotowe, integracja kodu jest tak prosta, jak ukończenie żądania ściągnięcia.