revisioni del codice di Copilot, correzione automatica di GitHub Copilot e Apple Silicon per gli agenti pipeline di macOS

Questo sprint sta rilasciando nuove funzionalità in anteprima progettate per migliorare la qualità del codice, la sicurezza e le funzionalità di compilazione. Le revisioni del codice basate su Copilot per Azure Repos (anteprima pubblica limitata) portano direttamente nelle pull request informazioni generate con l’assistenza dell’IA, aiutando i team a identificare i problemi e a migliorare il codice in modo più efficiente. GitHub Copilot Autofix per Code Scanning (anteprima pubblica limitata) rafforza ulteriormente la sicurezza suggerendo automaticamente correzioni per le vulnerabilità rilevate. Inoltre, il supporto di Apple Silicon (ARM64) per gli agenti della pipeline macOS (anteprima con pagamento in base al consumo) espande le opzioni di compilazione, abilitando carichi di lavoro macOS nativi con prestazioni e flessibilità migliorate. Queste funzionalità di anteprima offrono l'opportunità di esplorare la nuova generazione di supporto della produttività e della piattaforma per sviluppatori in Azure DevOps.

Dai un'occhiata alle note di rilascio per i dettagli.

Sicurezza avanzata di GitHub per Azure DevOps

Azure Boards (Pannelli di Azure)

Azure Pipelines

Azure Repos

Sicurezza avanzata di GitHub per Azure DevOps

GitHub Copilot correzione automatica per l'analisi del codice (anteprima pubblica limitata)

GitHub Copilot Autofix è ora disponibile in anteprima pubblica limitata per GitHub Advanced Security for Azure DevOps. Copilot Autofix analizza gli avvisi della scansione del codice di CodeQL e suggerisce correzioni mirate al codice, creando automaticamente una pull request con la correzione. Gli sviluppatori possono esaminare la correzione suggerita e unire la richiesta pull, riducendo il tempo impiegato per correggere le vulnerabilità di sicurezza.

Correzione automatica di Copilot per la scansione del codice in GitHub Advanced Security per Azure DevOps

Le organizzazioni interessate a partecipare possono registrarsi all'anteprima e, una volta approvate, abilitare Copilot Autofix per la propria organizzazione e i propri repository.

Per altre informazioni, vedi Correzione automatica di Copilot per la scansione del codice (anteprima).

Implementazione predefinita di CodeQL completata

La distribuzione dell'anteprima pubblica della configurazione predefinita di CodeQL per la scansione del codice è stata completata ed è ora disponibile per tutti i clienti di GitHub Advanced Security for Azure DevOps. Usando l'installazione predefinita di CodeQL, è possibile abilitare l'analisi del codice per i repository senza alcuna configurazione manuale della pipeline. Dopo l'abilitazione, CodeQL analizza automaticamente il codice usando Azure Pipelines e rileva le vulnerabilità di sicurezza negli avvisi del repository.

Per iniziare, vedere Configurare l'analisi del codice.

Controlli avanzati dello stato di sicurezza per le richieste pull (disponibilità generale)

I controlli avanzati dello stato di sicurezza per le richieste pull sono ora disponibili a livello generale. Usare i criteri configurabili AdvancedSecurity/NewHighAndCritical e AdvancedSecurity/AllHighAndCritical di ramo per bloccare il completamento delle richieste pull quando vengono rilevati avvisi di gravità elevata o critica, aiutando il team a impedire che le nuove vulnerabilità raggiungano rami protetti.

Per altre informazioni, vedere Configurare i controlli di stato come criteri di ramo.

L'accesso all'identità di compilazione per visualizzare gli avvisi viene rimosso

Basandoci sulla modifica introdotta inizialmente in Sprint 269: accesso limitato dell'identità della build per le API di Advanced Security, stiamo completando la rimozione dell'autorizzazione del servizio dell'identità della build a visualizzare gli avvisi di Advanced Security. Questa modifica viene eseguita a partire dal 1° luglio 2026 e termina il 15 luglio 2026.

Al termine dell'implementazione, non è possibile usare gli account del servizio di compilazione per visualizzare gli avvisi per il controllo delle pipeline. Se le pipeline dipendono dall'account del servizio di build per leggere gli avvisi e sottoporre le build a gate, passate ai controlli dello stato di Advanced Security, che offrono al team un modo nativo per bloccare il completamento delle pull request quando vengono rilevati nuovi avvisi con gravità alta o critica.

Per i passaggi successivi, vedere Configurare i controlli di stato come criteri di ramo. Per altre informazioni su questa modifica, vedere Creare identità che possono accedere di nuovo agli avvisi di lettura sicurezza avanzata.

Azure Boards (Pannelli di Azure)

Opzione di selezione del modello dell'agente di codifica

Modelli diversi possono produrre risultati diversi quando si usa l'agente di codifica Copilot con elementi di lavoro, in particolare quando si usano istruzioni personalizzate o agenti personalizzati.

È ora possibile scegliere il modello usato dall'agente di codifica durante la creazione di una richiesta pull da un elemento di lavoro, offrendo maggiore controllo sulle prestazioni migliori per il team e la codebase.

Opzione di selezione del modello dell'agente di codifica in Azure Boards

Azure Pipelines

Requisito del commento più granulare per eseguire esecuzioni di convalida delle PR dai repository GitHub

Per proteggere le pipeline da usi non autorizzati, è possibile richiedere commenti da membri del team o collaboratori prima dell'inizio delle esecuzioni di convalida delle richieste pull.

Prima di questo sprint, l'obbligo di commento si applicava alle pull request provenienti sia dallo stesso repository sia dai fork. Se si volevano richiedere commenti dei membri del team solo per le pull request provenienti da fork, ciò non era possibile.

A partire da questo sprint, è possibile configurare i requisiti dei commenti in modo indipendente per ogni origine della richiesta pull. Nell'esempio seguente, i commenti sono necessari solo per le richieste pull provenienti dai fork del repository.

Immagine che mostra le richieste pull di compilazione dai fork del repository.

Accesso Azure DevOps con autenticazione di Microsoft Entra

È ora possibile usare la nuova connessione al servizio Azure DevOps per accedere a Azure DevOps con un'identità del carico di lavoro Microsoft Entra (entità servizio o identità gestita) anziché token di accesso personale (PAT) o token di sessione.

L'uso delle connessioni al servizio Azure DevOps consente di migliorare la sicurezza delle pipeline in diversi modi:

  • Privilegio minimo: usare autorizzazioni con ambito definito per le connessioni al servizio anziché autorizzazioni condivise ampie per l'account del servizio di build
  • Autenticazione senza pat: eliminare la necessità di creare, archiviare e ruotare i token di accesso personale
  • Nessun segreto permanente: usare le credenziali federate Microsoft Entra anziché le password
  • Audit trail: i tentativi di autenticazione vengono registrati nei log di controllo di Azure DevOps

Configurazione di una connessione al servizio Azure DevOps

Per creare la connessione al servizio Azure DevOps, è prima necessario aggiungere un'entità servizio o un'identità gestita come utente all'organizzazione e assegnargli le autorizzazioni.

Per creare la connessione al servizio, scegliere Azure DevOps (anteprima):To create the service connection, choose Azure DevOps (Preview):

Screenshot che mostra il nuovo tipo di connessione del servizio.

e selezionare l'entità servizio o l'identità gestita appena creata come identità usata:

Screenshot che mostra la configurazione della connessione al servizio.

È necessario assegnare all'identità le autorizzazioni necessarie per l'organizzazione. A tale scopo, seguire il collegamento Visualizza accesso nell'organizzazione corrente e, ad esempio, aggiungerlo al gruppo Lettori del progetto corrente.

Screenshot che mostra i dettagli della connessione hservice

Uso della nuova connessione al servizio Azure DevOps

Per eseguire il check-out di un repository da un'organizzazione diversa:

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

Per fare riferimento a un modello YAML da un'organizzazione diversa:

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

Per accedere a un feed di artefatti usando una delle attività di autenticazione:

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

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

Uso della nuova connessione al servizio Azure DevOps in uno script

La nuova AzureCLI@3 attività può essere usata per accedere Azure DevOps con l'autenticazione Entra in diversi modi. In tutti i casi, configurare la connessione al servizio impostando connectionType: 'azureDevOps' e assegnando azureDevOpsServiceConnection a una connessione al servizio Azure DevOps creata:

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

Questo crea una sessione autenticata con Entra ID con l'interfaccia a riga di comando di 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

Se si ha effettivamente bisogno di un token, ad esempio se si ha uno script esistente in cui si usa un PAT o System.AccessToken direttamente nello script, esiste anche un metodo per ottenere un token di accesso di Entra che può essere usato per accedere ad 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

Maggiori informazioni

Per altre informazioni su come configurare la connessione al servizio Azure DevOps, vedere la documentazione.

Apple Silicon per gli agenti della pipeline macOS (anteprima con pagamento in base al consumo)

Gli agenti macOS Apple Silicon sono disponibili in Azure Pipelines come anteprima pubblica. A partire da Apple Silicon, porteremo alcune delle stesse dimensioni disponibili in GitHub Actions a Azure Pipelines.

Sistema operativo Specifiche hardware Image Etichetta dell'immagine della macchina virtuale YAML Piscina
macOS 26 Standard macOS 26 arm64 macos-26-arm64 Agenti ospitati da GitHub
macOS 26 XLarge macOS 26 arm64 XL macos-26-arm64-xl Agenti ospitati da GitHub

Questi agenti utilizzano la tariffazione Pay-as-you-Go con una tariffa al minuto in base alle dimensioni dell'agente; consulta prezzi.

Per usare i nuovi agenti, abilitare gli agenti ospitati GitHub nelle impostazioni di fatturazione:

Schermata che mostra come abilitare le tariffe con pagamento in base al consumo.

Verrà effettuato il provisioning del nuovo pool GitHub-hosted Agents utilizzato per gli agenti con pagamento a consumo.

Utilizzo delle immagini Apple Silicon

Una volta effettuato il provisioning, è possibile utilizzare l'immagine Apple Silicon macos-26-arm64 come segue:

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

E per un'immagine ancora più d'impatto come questa: macos-26-arm64-xl

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

Monitoraggio dell'utilizzo al minuto

Gli agenti con pagamento in base al consumo vengono addebitati al minuto. Per monitorare il numero di minuti usati, la scheda di analisi aggiornata del pool di agenti ospitati GitHub consente di visualizzare il numero di minuti usati per ogni progetto, filtrare l'immagine ed eseguire il drill-down sullo SKU e sulla pipeline dell'agente:

Screenshot che mostra come usare la scheda analisi.

In Gestione costi di Azure è possibile tenere traccia dei minuti utilizzati e suddividere l'utilizzo per organizzazione e progetto di Azure DevOps:

Screenshot che mostra come monitorare il costo con pagamento in base al consumo.

È possibile sfruttare Gestione costi di Azure supporto per budget e avvisi per prevedere e monitorare la spesa.

Maggiori informazioni

Per altre informazioni su come abilitare gli agenti Apple Silicon e le specifiche degli agenti, vedere la documentazione degli agenti ospitati GitHub.

Azure Repos

Revisioni del codice con Copilot per Azure Repos (anteprima pubblica limitata)

GitHub Copilot ora può esaminare le richieste pull direttamente in Azure Repos. Quando una richiesta pull è pronta per la revisione, gli sviluppatori possono richiedere una revisione Copilot per analizzare le modifiche proposte e identificare potenziali bug, problemi di qualità del codice e problemi di manutenibilità.

Il feedback viene fornito direttamente nella richiesta pull, aiutando i team a rilevare i problemi in precedenza e migliorare la qualità del codice prima dell'unione.

Richiesta di una revisione del codice Copilot in Azure Repos

Questa funzionalità è disponibile tramite un'anteprima pubblica limitata. Le organizzazioni interessate a partecipare possono iscriversi all'anteprima e, una volta ottenuta l'approvazione, abilitare Copilot Code Reviews per la propria organizzazione e i propri repository.

Abilita il confronto tra commit nella pagina di confronto dei rami

Ora puoi cercare e selezionare i commit tramite SHA direttamente dal selettore di versione nella pagina di confronto tra rami.

In precedenza, per confrontare i commit era necessario costruire manualmente un URL. Con la nuova scheda Commits nel selettore della versione, i confronti tra commit e tra ramo e commit sono disponibili direttamente nell'interfaccia utente.

Confronto dei commit nella pagina di confronto dei rami

Passaggi successivi

Annotazioni

Queste funzionalità verranno implementate nelle prossime due o tre settimane. Passare ad Azure DevOps e dare un'occhiata.

Come fornire commenti e suggerimenti

Ci piacerebbe sentire ciò che pensi a queste funzionalità. Usa il menu di aiuto per segnalare un problema o fornire un suggerimento.

Inviare un suggerimento

È anche possibile ottenere consigli e risposte alle domande della community su Stack Overflow.