Opisywanie wewnętrznego źródła za pomocą forka

Ukończone

Ludzie forkują repozytoria, gdy chcą zmienić kod w repozytorium, do którego nie mają uprawnień do zapisu.

Jeśli nie masz dostępu do zapisu, nie jesteś częścią zespołu współtworzenia tego repozytorium, więc dlaczego chcesz zmodyfikować repozytorium kodu?

Mamy tendencję do poszukiwania przyczyn technicznych, aby poprawić coś w naszej pracy.

Możesz znaleźć lepszy sposób implementacji rozwiązania lub ulepszenia funkcjonalności przez współtworzenia lub ulepszania istniejącej funkcji.

Możesz rozwidlać repozytoria w następujących sytuacjach:

  • Chcę wprowadzić zmianę.
  • Myślę, że projekt jest ekscytujący i być może będę chciał go wykorzystać.
  • Chcę użyć kodu w tym repozytorium jako punktu wyjścia dla mojego projektu.

Zespoły ds. oprogramowania są zachęcane do współtworzenia wszystkich projektów wewnętrznie, a nie tylko ich projektów oprogramowania.

Rozwidlenia to świetny sposób na wspieranie wewnętrznej kultury open source.

Rozgałęzienia są niedawnym dodatkiem do repozytoriów Git usługi Azure DevOps.

Ta instrukcja nauczy Cię, jak forkować istniejące repozytorium i wnosić zmiany do oryginalnego repozytorium za pośrednictwem pull requesta.

Przygotowanie

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

Podczas tworzenia rozwidlenia w usłudze Azure DevOps można uwzględnić wszystkie gałęzie lub ograniczyć je tylko do gałęzi domyślnej.

Fork nie kopiuje uprawnień, zasad ani definicji kompilacji z forkowanego repozytorium.

Po utworzeniu rozwidlenia, nowo utworzone pliki, foldery i gałęzie z rozwidlenia nie są udostępniane między repozytoriami, chyba że zaczniesz pull request.

Żądania ściągnięcia są obsługiwane w obu kierunkach: od rozwidlenia do rozwidlenia nadrzędnego lub nadrzędnego do rozwidlenia.

Najczęstszym podejściem do żądania ściągnięcia jest rozwidlenie do nadrzędnego.

Jak to zrobić

  1. Wybierz przycisk Odgałęzienia (1), a następnie wybierz projekt, w którym ma zostać utworzone odgałęzienie (2). Nadaj forkowi nazwę i wybierz przycisk Fork (3).

  2. Gdy fork będzie gotowy, sklonuj go przy użyciu wiersza polecenia lub zintegrowanego środowiska programistycznego takiego jak Visual Studio. Repozytorium fork zostanie twoim źródłem zdalnym. Dla wygody należy dodać zdalne repozytorium, z którego dokonano rozwidlenia, jako remote o nazwie upstream. W wierszu polecenia wpisz:

    git remote add upstream {upstream_url}
    
  3. Istnieje możliwość pracy bezpośrednio w głównym repozytorium — to rozwidlenie jest twoją kopią tego repozytorium. Zalecamy jednak nadal pracować w gałęzi tematycznej. Umożliwia jednoczesne utrzymywanie wielu niezależnych strumieni roboczych. Ponadto zmniejsza zamieszanie później, gdy chcesz zsynchronizować zmiany do swojego forka. Wprowadź i zatwierdź zmiany w zwykły sposób. Po zakończeniu modyfikacji wypchnij je do źródła (rozwidlenia).

  4. Otwórz żądanie ściągnięcia z rozwidlenia do nadrzędnego strumienia. Nadrzędne repozytorium zastosuje wszystkie zasady wymagane dla recenzji i budowania. Po spełnieniu wszystkich polityk, PR (żądanie ściągnięcia) można zaakceptować, a zmiany stają się stałą częścią głównego repozytorium.
    Diagram przedstawiający tworzenie żądania ściągnięcia.

  5. Po zaakceptowaniu pull requesta w górnym repozytorium upewnij się, że Twój fork odzwierciedla najnowszy stan repozytorium. Zalecamy ponowne łączenie gałęzi głównej nadrzędnej (przy założeniu, że głównym elementem jest gałąź programowania). W wierszu polecenia uruchom polecenie:

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

Aby uzyskać więcej informacji na temat usługi Git, zobacz: