Współpraca z żądaniami ściągnięcia

Ukończone

Żądania ściągnięcia umożliwiają przekazywanie innym osobom informacji o zmianach wypchniętych do repozytorium GitHub.

Po wysłaniu żądania ściągnięcia zainteresowane strony mogą przeglądać zestaw zmian, omawiać potencjalne modyfikacje, a nawet wypychać zatwierdzenia w razie potrzeby.

Żądania ściągnięcia są często używane przez zespoły i organizacje współpracujące przy użyciu modelu udostępnionego repozytorium.

Wszyscy współużytkują pojedyncze repozytorium, a gałęzie tematów są używane do opracowywania funkcji i izolowania zmian.

Wiele projektów typu open source w usłudze GitHub używa żądań ściągnięcia do zarządzania zmianami ze strony współautorów.

Pomagają one zapewnić sposób powiadamiania opiekunów projektu o zmianach, które zostały wprowadzone.

Ponadto rozpocznij przegląd kodu i ogólne omówienie zestawu zmian przed scaleniem z gałęzią główną.

Żądania ściągnięcia łączą przegląd i scalanie kodu w jeden proces współpracy.

Po zakończeniu naprawiania usterki lub nowej funkcji w gałęzi utwórz nowe żądanie ściągnięcia.

Dodaj członków zespołu do żądania ściągnięcia, aby mogli przeglądać i głosować nad zmianami.

Użyj żądań ściągnięcia, aby przejrzeć prace w toku i uzyskać wczesną opinię na temat zmian.

Nie ma zobowiązania do scalenia zmian, ponieważ właściciel może porzucić żądanie ściągnięcia w dowolnym momencie.

Rozgałęzianie, omówienie i scalanie.

Przeglądanie kodu

Przegląd kodu wykonany w żądaniu ściągnięcia nie tylko umożliwia znalezienie usterek — dotyczy to testów.

Dobry przegląd kodu przechwytuje mniej oczywiste problemy, które mogą prowadzić do kosztowych problemów później.

Przeglądy kodu pomagają chronić zespół przed nieprawidłowymi scalaniami i uszkodzonymi kompilacjami, które zwiększają produktywność twojego zespołu.

Przegląd przechwytuje te problemy przed scaleniem, chroniąc podstawowe gałęzie przed niechcianymi zmianami.

Doświadczenie w zakresie krzyżowego zapylania i rozpowszechnianie strategii rozwiązywania problemów przy użyciu szerokiej gamy recenzentów w przeglądach kodu.

Różnice umiejętności i wiedza sprawiają, że twój zespół jest bardziej niezawodny i bardziej odporny.

Prześlij świetną opinię

Recenzje wysokiej jakości zaczynają się od wysokiej jakości opinii. Klucze do doskonałej opinii w żądaniu ściągnięcia to:

  • Poproś odpowiednich użytkowników o przejrzenie żądania ściągnięcia.
  • Upewnij się, że recenzenci wiedzą, co robi kod.
  • Przekaż konstruktywne informacje zwrotne z możliwością działania.
  • Natychmiast odpowiedz na komentarze.

Podczas przypisywania recenzentów do żądania ściągnięcia upewnij się, że wybrano odpowiedni zestaw recenzentów.

Chcesz, aby recenzenci wiedzieli, jak działa twój kod i starają się uwzględnić deweloperów pracujących w innych obszarach, aby podzielić się swoimi pomysłami.

Ponadto, kto może podać jasny opis zmian i skompilować kod, który zawiera poprawkę lub funkcję uruchomioną w nim.

Recenzenci powinni spróbować przekazać opinię na temat zmian, z którymi się nie zgadzają. Zidentyfikuj problem i podaj konkretną sugestię dotyczącą tego, co zrobisz inaczej.

Ta opinia ma wyraźną intencję i jest łatwa dla właściciela żądania ściągnięcia, aby zrozumieć.

Właściciel żądania ściągnięcia powinien odpowiedzieć na komentarze, zaakceptować sugestię lub wyjaśnić, dlaczego sugerowana zmiana nie jest idealna.

Czasami sugestia jest dobra, ale zmiany wykraczają poza zakres żądania ściągnięcia.

Weź te sugestie i utwórz nowe elementy robocze i gałęzie funkcji niezależnie od żądania ściągnięcia, aby wprowadzić te zmiany.

Ochrona gałęzi za pomocą zasad

Repozytoria zwykle zawierają co najmniej jedną gałązkę, w tym główną, która wymaga dodatkowej ochrony ze względu na ich krytyczne znaczenie. Usługa Azure Repos oferuje kilka mechanizmów opartych na zasadach, które należy wziąć pod uwagę, aby ułatwić osiągnięcie tego celu.

Podstawowym założeniem tych mechanizmów jest zastosowanie ograniczeń do żądań ściągnięcia. Można na przykład uwzględnić wymuszanie określonych zasad przeglądu kodu, takich jak wymaganie minimalnej liczby zatwierdzeń od wyznaczonych recenzentów przed scaleniem żądania ściągnięcia. Wykorzystanie zbiorowej wiedzy jest związane z zwiększeniem jakości i niezawodności zmian kodu.

Ponadto rozważ zaimplementowanie zasad Sprawdzanie połączonych elementów roboczych. Sprawdza to, czy każde żądanie ściągnięcia jest połączone z elementem roboczym, zapewniając kontekst i promowanie możliwości śledzenia. Zasady sprawdzania rozwiązywania komentarzy pomagają upewnić się, że wszystkie komentarze do przeglądu kodu są rozwiązywane przed scaleniem żądania ściągnięcia.

Zasady związane z automatyczną analizą kodu, testowaniem i sprawdzaniem zgodności potwierdzają, że zmiany spełniają wstępnie zdefiniowane standardy przed integracją. Ograniczanie typów scalania pomaga zachować historię gałęzi sterowania. Możesz na przykład zezwolić tylko na szybkie scalanie i squasha.

Istnieje również możliwość umocowania czystych kompilacji nowych wersji kodu przed zezwoleniem na ich scalenie z gałęziami krytycznymi. Zapewni to, że scalone zmiany nie wprowadzają błędów kompilacji ani problemów z regresją. Kontrole stanu mogą służyć do wykonywania żądań ściągnięcia w zależności od sygnałów generowanych przez usługi zewnętrzne. Na przykład takie sygnały mogą być generowane przez usługę Azure Pipelines uruchamiając zautomatyzowane testy i analizę kodu.

Wszystkie gałęzie, które mają skonfigurowane wymagane zasady, automatycznie blokują bezpośrednie wypychanie, skutecznie wymuszając żądania ściągnięcia dla wszystkich zmian. Ponadto nie można usunąć takich gałęzi.