Udostępnij za pośrednictwem


Łączenie commitów GitHub, pull requestów, gałęzi i problemów z elementami roboczymi w Azure Boards

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

W tym artykule dowiesz się, jak połączyć elementy robocze z zatwierdzeniami GitHub, żądaniami ściągnięcia, gałęziami i kompilacjami po połączeniu projektu Azure Boards z repozytorium GitHub. Możesz użyć składni #mention dla zatwierdzeń i gałęzi, użyj ! wzmianki, aby odwołać się do żądań ściągnięcia GitHub z dyskusji dotyczących elementów pracy lub dodać link do zatwierdzenia, żądania ściągnięcia lub gałęzi na GitHubie bezpośrednio z elementu pracy Azure Boards.

Note

obsługa integracji GitHub:

  • Azure DevOps Services: integruje się zarówno z repozytoriami GitHub.com, jak i GitHub Enterprise Server za pośrednictwem aplikacji Azure Boards na potrzeby GitHub.
  • Azure DevOps Server 2020 i nowszych: obsługuje integrację tylko z repozytoriami GitHub Enterprise Server.
  • Inne repozytoria Git: integracja nie jest obsługiwana.

Prerequisites

Category Requirements
uprawnienia Contributor do projektu Azure Boards oraz repozytorium GitHub.
Połączenie projektu Projekt Azure Boards jest połączony z repozytorium GitHub, w którym istnieją commity, pull requesty i gałąź, z którymi chcesz nawiązać lub do których chcesz nawiązać połączenie. Aby uzyskać więcej informacji, zobacz Azure Boards-GitHub integration.

Note

Aby wyświetlić sekcję Rozwój i typy łączy GitHub, projekty korzystające z modelu procesu Hostowany XML wymagają aktualizacji typów elementów roboczych. Aby uzyskać więcej informacji, zobacz Aktualizowanie definicji XML dla wybranych typów elementów roboczych.

W zatwierdzeniu GitHub, żądaniu dodania lub problemie użyj następującej składni, aby utworzyć link do elementu roboczego w Azure Boards. Wprowadź AB#ID wewnątrz tekstu komunikatu zatwierdzenia. Lub, w przypadku żądania ściągnięcia lub problemu, wprowadź AB#ID w opisie. Użycie AB#ID w tytule komentarza lub żądania ściągnięcia nie powoduje utworzenia linku w elemencie roboczym.

AB#{ID}

Na przykład AB#125 linkuje do elementu roboczego o identyfikatorze 125.

Możesz również wprowadzić komunikat zatwierdzenia lub żądania dodania, aby zmienić element roboczy. System rozpoznaje {state} lub {state category}, wraz z fix, fixes, fixed, i stosuje go do elementu #-mention, który następuje.

Gdy opis żądania ściągnięcia zawiera prawidłową nazwę stanu, na przykład Closed AB#1234, system aktualizuje przywołyny element roboczy do tego określonego stanu. Jeśli nazwa stanu nie jest rozpoznawana bezpośrednio, Azure Boards próbuje dopasować ją do kategorii przepływu pracy, takiej jak Resolved lub Completed. W przypadku znalezienia dopasowania element roboczy przechodzi do pierwszego dostępnego stanu zdefiniowanego w tej kategorii.

Domyślnie elementy robocze, do których odwołują się fix, fixes lub fixed, przechodzą do pierwszego stanu skojarzonego z kategorią Rozwiązane. Jeśli taki stan nie istnieje w bieżącym procesie, system zamiast tego przenosi element roboczy do pierwszego stanu w kategorii Ukończono .

Important

Nadal można połączyć elementy robocze i inne gałęzie, ale reguły przejścia stanu nie mają zastosowania, chyba że żądanie ściągnięcia zostanie scalone z gałęzią domyślną.

Aby uzyskać więcej informacji, zobacz Jak stany kategorii przepływu pracy są używane w listach prac i tablicach Azure Boards.

Zapoznaj się z poniższą tabelą przykładów:

Komunikat zatwierdzenia lub prośba o pobranie Action
Fixed AB#123 Łączy i przechodzi element roboczy do kategorii 'Rozwiązano' w przepływie pracy lub, jeśli żadna nie jest zdefiniowana, do kategorii 'Ukończono' w przepływie pracy.
Closed AB#123 Łączy i przełącza element roboczy do stanu przepływu pracy Zamknięty. Jeśli żadna z nich nie jest zdefiniowana, żadne przejścia nie zostaną wykonane.
Adds a new feature, fixes AB#123. Łączy i przechodzi element roboczy do kategorii 'Rozwiązano' w przepływie pracy lub, jeśli żadna nie jest zdefiniowana, do kategorii 'Ukończono' w przepływie pracy.
Fixes AB#123, AB#124, and AB#126 Linki do elementów roboczych Azure Boards 123, 124 i 126. Przenosi tylko pierwszy element, 123 do kategorii Stan rozwiązanego przepływu pracy lub, jeśli żaden z nich nie jest zdefiniowany, to do kategorii Ukończonego stanu przepływu pracy.
Fixes AB#123, Fixes AB#124, Fixes AB#125 Linki do elementów roboczych Azure Boards 123, 124 i 126. Przenosi wszystkie elementy do kategorii stanu przepływu pracy Rozwiązany, lub jeśli żadna nie jest zdefiniowana, do kategorii stanu przepływu pracy Ukończono.
Fixing multiple bugs: issue #123 and user story AB#234 Linki do zgłoszenia GitHub 123 i elementu roboczego Azure Boards 234. Żadne przejścia nie są wykonywane.

Note

Jeśli połączysz to samo repozytorium GitHub z projektami zdefiniowanymi w co najmniej dwóch organizacjach Azure DevOps, możesz zobaczyć nieoczekiwane łączenie wzmianki AB#. Aby uzyskać więcej informacji, zobacz Rozwiązywanie problemów z połączeniem. Z tego powodu zalecamy połączenie repozytorium GitHub tylko z projektami zdefiniowanymi w jednej organizacji Azure DevOps.

Po dodaniu linku do elementu roboczego przy użyciu AB# w opisie żądania ściągnięcia te linki są wyświetlane w Development sekcji żądania ściągnięcia GitHub. Te linki są dostępne tylko w przypadku użycia AB# w opisie żądania ściągnięcia. Nie są wyświetlane, jeśli odwołujesz się do pull request bezpośrednio od elementu roboczego. AB# Usunięcie odwołania z opisu spowoduje również usunięcie go z sekcji Programowanie.

Zrzut ekranu linków AB# w sekcji rozwoju żądania ściągnięcia na GitHub.

Tworzenie gałęzi GitHub na podstawie elementu roboczego

Aby utworzyć gałąź GitHub bezpośrednio z poziomu elementu roboczego, wykonaj następujące kroki:

  1. Na tablicy znajdź element roboczy, którego chcesz użyć do utworzenia gałęzi GitHub.

  2. Wybierz pozycję Działania elementów roboczych>Nowa gałąź GitHub.

    Zrzut ekranu elementu roboczego z opcją Więcej działań, z wyróżnioną opcją utworzenia nowej gałęzi GitHub.

  3. W oknie dialogowym Utwórz gałąź GitHub wprowadź nazwę gałęzi. Wybierz repozytorium GitHub i gałąź podstawową.

  4. Wybierz Utwórz.

     Zrzut ekranu przedstawiający okno dialogowe Tworzenie gałęzi GitHub.

    Azure Boards tworzy gałąź w określonym repozytorium GitHub i łączy ją z elementem roboczym. Aby uzyskać więcej informacji, zobacz Azure Boards-GitHub integration.

  1. Otwórz element roboczy i przejdź do obszaru Programowanie .

  2. Wybierz pozycję Dodaj link. Z każdego menu rozwijanego wybierz typ łącza, repozytorium GitHub i żądanie pull request GitHub. Możesz wyszukiwać i przechodzić do szczegółów w repozytorium, aby znaleźć i wybrać określone żądanie ściągnięcia lub zatwierdzenie bez konieczności kopiowania i wklejania adresu URL.

  3. Wybierz pozycję Dodaj link.

    Zrzut ekranu przedstawiający pięcioetapową sekwencję dodawania linku żądania ściągnięcia do elementu roboczego.

    Azure Boards sprawdza, czy wprowadzono prawidłowy link. Repozytorium GitHub musi być połączone z projektem Azure Boards, lub walidacja kończy się niepowodzeniem.

Note

Jeśli używasz Azure DevOps Server i GitHub Enterprise Server, podczas kończenia łączy AB# występuje opóźnienie. Proces używa projektu "pobierania i wysyłania", aby pobrać ze zdarzeń GitHub co godzinę dla przyrostowych zmian zatwierdzeń, żądań ściągnięcia i zgłoszeń.

Kilka zdarzeń automatycznie aktualizuje łącza w formularzu elementu roboczego, więc nie trzeba ich tworzyć ręcznie. Te zdarzenia obejmują:

wydarzenie GitHub Action
Łącze do gałęzi Po utworzeniu żądania ściągnięcia z gałęzi automatycznie łączy się z elementem roboczym.
Zatwierdzenie scalania Po scaleniu żądania pull request, wynikowy commit scalający jest automatycznie powiązany z elementem roboczym.
Usuń gałąź Jeśli gałąź zostanie usunięta (zazwyczaj po scaleniu), jego link zostanie automatycznie usunięty z elementu roboczego.

Sekcja Rozwój w formularzu elementu roboczego zawiera linki do zatwierdzeń GitHub i żądań ściągnięcia utworzone przy użyciu ikony GitHub.

Wybierz link, aby otworzyć zatwierdzenie lub pull request na GitHubie.

Wgląd w pull requesty na GitHubie

Połączone żądania ściągnięcia GitHub w sekcji Programowanie zawierają dodatkowe szczegóły stanu, dzięki czemu możesz ocenić postęp bez otwierania żądania ściągnięcia w GitHub.

Wymagania wstępne dotyczące szczegółowych informacji o żądaniach ściągnięcia

Aby wyświetlić szczegółowe informacje o żądaniach ściągnięcia, przejdź do aplikacji Azure Boards w GitHub i zaakceptuj zaktualizowane uprawnienia umożliwiające odczyt i zapis do Checks.

 Zrzut ekranu przedstawiający okno dialogowe uprawnień aplikacji Azure Boards GitHub z zaktualizowanymi uprawnieniami sprawdzania.

Wyświetl szczegóły stanu pull request

  1. Otwórz element roboczy, który ma powiązany pull request GitHub.

  2. W sekcji Rozwój znajdź powiązane żądanie dodania. Następujące szczegóły stanu są wyświetlane obok linku żądania ściągnięcia:

    • Stan wersji roboczej: pokazuje, czy żądanie ściągnięcia jest nadal wersją roboczą.
    • Stan przeglądu: pokazuje, czy żądanie ściągnięcia wymaga przeglądu, zostało zatwierdzone, czy zażądano zmian.
    • Status kontroli: pokazuje, czy kontrole CI przechodzą, kończą się niepowodzeniem, czy są w trakcie.

    Zrzut ekranu sekcji Rozwój przedstawiający połączone żądanie ściągnięcia z GitHub ze wskaźnikami szczegółów stanu: zamknięte, przegląd i sprawdzanie.

  3. Umieść kursor na wskaźniku stanu, aby wyświetlić więcej szczegółów, lub wybierz link żądania ściągnięcia, aby otworzyć go bezpośrednio w GitHub.

Podaj GitHub żądania ściągnięcia przy użyciu !

Użyj ! wzmianki, aby odwołać się do żądań przeciągnięcia na GitHubie bezpośrednio z dowolnego pola z sformatowanym tekstem elementu roboczego lub komentarza w dyskusji. Podczas wpisywania ! w polu tekstowym zostanie wyświetlony selektor, którego można użyć do wyszukiwania i wybrania GitHub żądania ściągnięcia z połączonego repozytorium. Wybrane żądanie ściągnięcia jest wstawione jako link do kliknięcia.

Ta funkcja ułatwia odwoływania się do powiązanych żądań ściągnięcia w opisach elementów roboczych, kryteriach akceptacji lub wątkach dyskusji bez ręcznego kopiowania adresów URL.

Gif pokazujący, jak używać ! wzmianka o odwołaniu się do żądania ściągnięcia GitHub z dyskusji elementu roboczego.

Wyświetlanie stanu kompilacji dla potoków YAML (zintegrowane w kompilacji)

Jeśli używasz Azure Pipelines YAML do kompilowania kodu hostowanego w repozytorium GitHub, możesz automatycznie tworzyć Zintegrowane w kompilacji łącza do skojarzonych elementów roboczych. Ta funkcja zapewnia możliwość śledzenia kompilacji dla repozytoriów GitHub, oferując podobne doświadczenie jak to dostępne dla Azure Repos.

Aby włączyć tę funkcję:

  1. Otwórz potok YAML, wybierz pozycję Więcej akcji, a następnie wybierz pozycję Ustawienia.

  2. W oknie dialogowym Ustawienia potoku włącz opcję Automatycznie połącz nowe elementy robocze w tej kompilacji.

    Zrzut ekranu przedstawiający okno dialogowe Ustawienia potoku YAML z opcją Automatycznie połącz nowe elementy robocze w tej kompilacji.

Po zakończeniu kompilacji link Zintegrowany w kompilacji zostanie automatycznie wyświetlony w sekcji Rozwój każdego skojarzonego elementu roboczego, co daje zespołowi pełną możliwość śledzenia z elementu roboczego do kompilacji.

Zrzut ekranu przedstawiający element roboczy z linkiem Zintegrowany w kompilacji w sekcji Programowanie.

Aby uzyskać więcej informacji na temat konfigurowania tego ustawienia, zobacz Konfigurowanie potoków do obsługi śledzenia pracy.

Wyświetlanie obiektów GitHub na tablicy

Włączając adnotacje GitHub na tablicy, możesz szybko otwierać powiązane commity GitHub, pull requesty lub zgłoszenia, aby uzyskać więcej szczegółowych informacji. Aby uzyskać więcej informacji, zobacz Dostosowywanie kart.

Zrzut ekranu przedstawiający łącza GitHub na kartach elementów roboczych.

Dalsze kroki