Przeglądy kodu w Copilot, automatyczne poprawki GitHub Copilot oraz agenci potoków dla macOS z Apple Silicon

W tym sprincie udostępniamy nowe funkcje w wersji zapoznawczej, mające na celu poprawę jakości kodu, bezpieczeństwa i możliwości kompilacji. Przeglądy kodu oparte na usłudze Copilot dla Azure Repos (ograniczona publiczna wersja zapoznawcza) udostępniają wskazówki wspomagane przez sztuczną inteligencję bezpośrednio w pull requestach, pomagając zespołom identyfikować problemy i wydajniej ulepszać kod. GitHub Copilot Autofix dla skanowania kodu (ograniczona publiczna wersja zapoznawcza) dodatkowo zwiększa bezpieczeństwo, automatycznie sugerując poprawki wykrytych podatności. Ponadto obsługa systemu Apple Silicon (ARM64) dla agentów potoków systemu macOS (wersja zapoznawcza z płatnością zgodnie z rzeczywistym użyciem) rozszerza opcje kompilacji, umożliwiając natywne obciążenia systemu macOS o wyższą wydajność i elastyczność. Te funkcje w wersji zapoznawczej umożliwiają zapoznanie się z następną generacją produktywności deweloperów i obsługi platform w Azure DevOps.

Sprawdź notatki o wydaniu, aby uzyskać szczegóły.

GitHub Advanced Security dla usługi Azure DevOps

Azure Boards

Azure Pipelines

Azure Repos

GitHub Advanced Security dla usługi Azure DevOps

GitHub Copilot Autofix dla skanowania kodu (ograniczona publiczna wersja próbna)

GitHub Copilot Autofix jest teraz dostępny w ramach ograniczonej publicznej wersji zapoznawczej dla GitHub Advanced Security for Azure DevOps. Copilot Autofix analizuje alerty skanowania kodu CodeQL i sugeruje ukierunkowane poprawki kodu, automatycznie tworząc pull request z poprawką. Deweloperzy mogą przejrzeć sugerowaną poprawkę i scalić pull request, skracając czas poświęcany na usuwanie luk w zabezpieczeniach.

Copilot — automatyczne poprawki dla skanowania kodu w GitHub Advanced Security for Azure DevOps

Organizacje zainteresowane udziałem mogą zapisać się do wersji zapoznawczej, a po zatwierdzeniu włączyć funkcję Copilot Autofix dla swojej organizacji i swoich repozytoriów.

Aby uzyskać więcej informacji, zobacz Copilot Autofix dla skanowania kodu (wersja zapoznawcza).

Ukończono domyślne wdrożenie konfiguracji codeQL

Udostępnianie publicznej wersji zapoznawczej domyślnej konfiguracji CodeQL do skanowania kodu zostało zakończone i jest ona teraz dostępna dla wszystkich klientów usługi GitHub Advanced Security for Azure DevOps. Korzystając z domyślnej konfiguracji CodeQL, można włączyć skanowanie kodu w swoich repozytoriach bez ręcznej konfiguracji potoku. Po włączeniu funkcji CodeQL kod jest automatycznie skanowany za pomocą usługi Azure Pipelines, a wykryte luki w zabezpieczeniach są wyświetlane w alertach repozytorium.

Aby rozpocząć, zobacz Konfigurowanie skanowania kodu.

Zaawansowane sprawdzanie stanu zabezpieczeń dla żądań ściągnięcia (ogólna dostępność)

Zaawansowane sprawdzanie stanu zabezpieczeń dla żądań ściągnięcia jest teraz ogólnie dostępne. Użyj konfigurowalnych zasad gałęzi AdvancedSecurity/NewHighAndCritical i AdvancedSecurity/AllHighAndCritical, aby blokować ukończenie żądania ściągnięcia po wykryciu alertów o wysokim lub krytycznym poziomie ważności, pomagając zespołowi zapobiegać przedostawaniu się nowych luk w zabezpieczeniach do chronionych gałęzi.

Aby uzyskać więcej informacji, zobacz Konfigurowanie kontroli stanu jako zasad gałęzi.

Dostęp do tożsamości kompilacji w celu wyświetlania alertów jest usuwany

Bazując na zmianie po raz pierwszy wprowadzonej w Sprint 269: Ograniczenie dostępu tożsamości kompilacji do interfejsów API funkcji Advanced Security, finalizujemy usunięcie uprawnienia usługi tożsamości kompilacji do wyświetlania alertów Advanced Security. Ta zmiana jest wdrażana od 1 lipca 2026 r. i kończy się 15 lipca 2026 r.

Po zakończeniu wdrożenia nie można używać kont usługi kompilacji do wyświetlania alertów dotyczących bramkowania potoku. Jeśli potoki polegają na koncie usługi kompilacji w celu odczytywania alertów i kompilacji bramy, przejdź do pozycji Testy stanu zabezpieczeń zaawansowanych, co daje zespołowi natywny sposób blokowania uzupełniania żądań ściągnięcia po wykryciu nowych alertów o wysokiej lub krytycznej ważności.

Aby poznać kolejne kroki, zobacz Konfigurowanie kontroli stanu jako zasad dla gałęzi. Aby uzyskać więcej informacji na temat tej zmiany, zobacz Build identities can access Advanced Security read alerts again (Tworzenie tożsamości może uzyskiwać dostęp do usługi Advanced Security).

Azure Boards

Opcja wyboru modelu agenta kodowania

Różne modele mogą generować różne wyniki podczas korzystania z agenta kodowania Copilot z elementami roboczymi, szczególnie w przypadku korzystania z instrukcji niestandardowych lub agentów niestandardowych.

Teraz możesz wybrać model używany przez agenta kodowania podczas tworzenia żądania ściągnięcia z elementu roboczego, co zapewnia większą kontrolę nad tym, co działa najlepiej dla zespołu i bazy kodu.

Opcja wyboru modelu agenta kodowania w Azure Boards

Azure Pipelines

Dokładniejszy wymóg komentarza dotyczący uruchamiania walidacji PR z repozytoriów GitHub

Aby ułatwić ochronę potoków przed nieautoryzowanym użyciem, możesz wymagać komentarzy od członków zespołu lub współautorów przed rozpoczęciem uruchamiania weryfikacji żądania ściągnięcia.

Przed tym sprintem wymóg komentarza obowiązywał w przypadku pull requestów zarówno z tego samego repozytorium, jak i z forków. Jeśli chciano wymagać komentarzy od członków zespołu tylko w przypadku pull requestów pochodzących z forków, nie było to możliwe.

Od tego sprintu można konfigurować wymagania dotyczące komentarzy niezależnie dla każdego źródła pull requestu. W poniższym przykładzie komentarze są wymagane tylko dla pull requestów pochodzących z forków repozytorium.

Obraz przedstawiający pull requesty z forków repozytorium.

Uzyskiwanie dostępu do Azure DevOps przy użyciu uwierzytelniania Microsoft Entra

Możesz teraz korzystać z nowego połączenia usługi Azure DevOps, aby uzyskiwać dostęp do usługi Azure DevOps przy użyciu tożsamości obciążenia roboczego Microsoft Entra (nazwy głównej usługi lub tożsamości zarządzanej) zamiast osobistych tokenów dostępu (PAT) lub tokenów sesji.

Korzystanie z połączeń usługi Azure DevOps pomaga zwiększyć bezpieczeństwo potoku na kilka sposobów:

  • Najmniej uprzywilejowane: użyj uprawnień połączenia z usługą o określonym zakresie zamiast szerokich uprawnień konta usługi kompilacji udostępnionej
  • Uwierzytelnianie bez tokenów PAT: wyeliminuj konieczność tworzenia, przechowywania i rotacji osobistych tokenów dostępu
  • Brak trwałych wpisów tajnych: użyj poświadczeń federacyjnych Microsoft Entra zamiast haseł
  • Dziennik inspekcji: próby uwierzytelniania są rejestrowane w dziennikach inspekcji Azure DevOps

Konfigurowanie połączenia usługi Azure DevOps

Aby utworzyć połączenie z usługą Azure DevOps, najpierw musisz dodać nazwę główną usługi lub tożsamość zarządzaną jako użytkownika do organizacji i przypisać odpowiednie uprawnienia.

Aby utworzyć połączenie z usługą, wybierz pozycję Azure DevOps (wersja zapoznawcza):

Zrzut ekranu przedstawiający nowy typ połączenia usługi.

i wybierz nazwę główną usługi lub tożsamość zarządzaną, która została właśnie utworzona, jako używaną tożsamość:

Zrzut ekranu przedstawiający konfigurację połączenia z usługą.

Należy przypisać tożsamości uprawnienia, których potrzebuje w organizacji. Możesz to zrobić, korzystając z linku Wyświetl dostęp w bieżącej organizacji , na przykład dodając go do grupy Czytelnicy bieżącego projektu.

Zrzut ekranu przedstawiający szczegóły połączenia hservice

Korzystanie z nowego połączenia usługi Azure DevOps

Aby wyewidencjonować repozytorium z innej organizacji:

resources:
  repositories:
  - repository: external-repo
    type: git
    endpoint: my-azdo-connection
    name: 'external-project/external-repo'
    ref: 'refs/heads/main'

steps:
- checkout: self
- checkout: external-repo

Aby odwołać się do szablonu YAML z innej organizacji:

resources:
  repositories:
    - repository: templates 
      type: git
      endpoint: my-azdo-connection
      name: 'external-project/external-repo'
      ref: "refs/heads/main"    
      
steps:
- template: azdosc-template.yml@templates

Aby uzyskać dostęp do źródła artefaktów przy użyciu jednego z zadań uwierzytelniania:

- task: NuGetAuthenticate@1
  inputs:
    nuGetServiceConnections: 'my-azdo-connection'

- task: DotNetCoreCLI@2
  inputs:
    command: 'restore'
    projects: '**/*.csproj'

Używanie nowego połączenia usługi Azure DevOps w skrycie

Nowe AzureCLI@3 zadanie może służyć do uzyskiwania dostępu do Azure DevOps przy użyciu uwierzytelniania Entra na wiele sposobów. We wszystkich przypadkach należy skonfigurować połączenie z usługą przez ustawienie connectionType: 'azureDevOps' i przypisanie azureDevOpsServiceConnection go do utworzonego połączenia usługi Azure DevOps:

- task: AzureCLI@3
  inputs:
    connectionType: 'azureDevOps'
    azureDevOpsServiceConnection: 'my-azdo-connection'

Spowoduje to utworzenie sesji uwierzytelnionej Entra ID za pomocą interfejsu wiersza polecenia Azure DevOps:

- task: AzureCLI@3
  displayName: Secret-less
  inputs:
    connectionType: 'azureDevOps'
    azureDevOpsServiceConnection: 'my-azdo-connection'
    scriptType: 'pscore'
    scriptLocation: 'inlineScript'
    inlineScript: |
      az devops configure -l

      az devops project list --query "value[].{Name:name, Id:id}" `
                            -o table

      az pipelines pool list --query "[].{Id:id, Name:name}" `
                            -o table

      az rest --method get `
              --url "https://status.dev.azure.com/_apis/status/health?api-version=7.1-preview.1" `
              --resource 499b84ac-1321-427f-aa17-267ca6975798 `
              --query "sort_by(services[?id=='Pipelines'].geographies | [], &name)" `
              -o table

Jeśli jednak potrzebujesz tokenu, na przykład masz istniejący skrypt, w którym używasz PAT lub System.AccessToken bezpośrednio w skrypcie, dostępna jest również metoda uzyskania tokenu dostępu Entra, którego można używać do uzyskiwania dostępu do Azure DevOps:

- task: AzureCLI@3
  displayName: Use Entra access token
  inputs:
    connectionType: 'azureDevOps'
    azureDevOpsServiceConnection: 'my-azdo-connection'
    scriptType: 'pscore'
    scriptLocation: 'inlineScript'
    inlineScript: |
      # Get access token for Azure DevOps
      $token = az account get-access-token --resource "499b84ac-1321-427f-aa17-267ca6975798" `
                                           --query "accessToken" `
                                           --output tsv
      
      # Use token in REST API call
      $headers = @{
        Authorization = "Bearer $token"
        "Content-Type" = "application/json"
      }
      
      $body = @{
        name = "Test Build"
      } | ConvertTo-Json
      
      Invoke-RestMethod -Uri "$(System.CollectionUri)$(System.TeamProject)/_apis/build/definitions?api-version=7.1" `
                        -Method POST `
                        -Headers $headers `
                        -Body $body

Więcej informacji

Aby uzyskać więcej informacji na temat konfigurowania połączenia usługi Azure DevOps, zobacz dokumentację.

Agenty potoku apple Silicon dla systemu macOS (wersja zapoznawcza z płatnością zgodnie z rzeczywistym użyciem)

Udostępniamy w usłudze Azure Pipelines agenty macOS oparte na Apple Silicon w publicznej wersji zapoznawczej. Począwszy od Apple Silicon, wprowadzimy niektóre z tych samych rozmiarów dostępnych w GitHub Actions do Azure Pipelines.

System operacyjny Specyfikacja sprzętu obraz Etykieta obrazu VM YAML Pool
macOS 26 Standard macOS 26 arm64 macos-26-arm64 Agenci hostowani przez GitHub
macOS 26 XLarge macOS 26 arm64 XL macos-26-arm64-xl Agenci hostowani przez GitHub

Ci agenci korzystają z cennika płatności zgodnie z rzeczywistym użyciem z stawką za minutę powiązaną z rozmiarem agenta, zobacz cennik.

Aby użyć nowych agentów, włącz agentów hostowanych GitHub w ustawieniach rozliczeń:

Zrzut ekranu pokazujący, jak włączyć ceny w modelu płatności zgodnie z rzeczywistym użyciem.

Spowoduje to utworzenie nowej puli agentów hostowanych przez GitHub używanej dla agentów w modelu płatności zgodnie z rzeczywistym użyciem.

Korzystanie z obrazów Apple Silicon

Po aprowizacji możesz użyć obrazu Apple Silicon macos-26-arm64 w następujący sposób:

pool:
  name: 'GitHub-hosted Agents'
  vmImage: 'macos-26-arm64'
steps:
- bash: |
    echo Hello from macOS Tahoe arm64
    uname -a
    sw_vers

A dla jeszcze bardziej wydajnego macos-26-arm64-xl obrazu, takiego jak ten:

pool:
  name: 'GitHub-hosted Agents'
  vmImage: 'macos-26-arm64-xl'
steps:
- bash: |
    echo Hello from XL macOS Tahoe arm64
    uname -a
    hostinfo | grep memory

Monitorowanie użycia w podziale na minuty

Agenci w modelu płatności zgodnie z użyciem są rozliczani za minutę. Aby śledzić liczbę wykorzystanych minut, zaktualizowana karta analityczna puli Agentów hostowanych w usłudze GitHub umożliwia wyświetlanie liczby wykorzystanych minut dla każdego projektu, filtrowanie według obrazu oraz przechodzenie do szczegółowych danych dotyczących jednostki SKU agenta i potoku:

Zrzut ekranu przedstawiający sposób korzystania z karty Analityka.

W Azure Cost Management możesz śledzić używane minuty i podzielić użycie przez organizację i projekt Azure DevOps:

Zrzut ekranu przedstawiający sposób monitorowania kosztów w modelu płatności zgodnie z rzeczywistym użyciem.

Możesz wykorzystać w usłudze Azure Cost Management funkcje obsługi budżetów i alertów, aby prognozować i monitorować wydatki.

Więcej informacji

Aby uzyskać więcej informacji na temat włączania agentów Apple Silicon i specyfikacji agentów, zapoznaj się z dokumentacją agentów hostowanych przez GitHub.

Azure Repos

Przeglądy kodu Copilot dla Azure Repos (ograniczona publiczna wersja zapoznawcza)

GitHub Copilot może teraz bezpośrednio recenzować pull requesty w Azure Repos. Gdy pull request jest gotowy do przeglądu, deweloperzy mogą poprosić Copilota o przeprowadzenie przeglądu, aby przeanalizować proponowane zmiany i zidentyfikować potencjalne błędy, problemy z jakością kodu oraz problemy z łatwością utrzymania.

Informacje zwrotne są przekazywane bezpośrednio w pull requeście, pomagając zespołom wcześniej wykrywać problemy i poprawiać jakość kodu przed scaleniem.

Żądanie przeglądu kodu Copilot w Azure Repos

Ta funkcja jest dostępna za pośrednictwem ograniczonej publicznej wersji zapoznawczej. Organizacje zainteresowane udziałem mogą zapisać się do wersji zapoznawczej, a po zatwierdzeniu włączyć przeglądy kodu Copilot dla swojej organizacji i swoich repozytoriów.

Włącz porównanie commitów na stronie porównania gałęzi

Teraz możesz wyszukiwać i wybierać zatwierdzenia według algorytmu SHA bezpośrednio z selektora wersji na stronie porównania gałęzi.

Wcześniej porównywanie commitów wymagało ręcznego utworzenia adresu URL. Dzięki nowej karcie Commity w selektorze wersji porównania między commitami oraz między gałęzią a commitem są dostępne bezpośrednio w interfejsie.

Porównanie zatwierdzń na stronie porównania gałęzi

Następne kroki

Uwaga / Notatka

Te funkcje będą wdrażane w ciągu najbliższych dwóch do trzech tygodni. Przejdź do usługi Azure DevOps i przyjrzyj się.

Jak przekazać opinię

Chcielibyśmy usłyszeć, co myślisz o tych funkcjach. Użyj menu Pomocy, aby zgłosić problem lub podać sugestię.

Utwórz sugestię

Możesz również uzyskać porady i odpowiedzi na pytania społeczności w witrynie Stack Overflow.