Migliorare le descrizioni delle richieste pull usando modelli

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

La scrittura di descrizioni di richieste pull valide è un ottimo modo per aiutare i revisori a sapere cosa aspettarsi durante la revisione del codice. Sono anche un ottimo modo per tenere traccia delle operazioni che devono essere eseguite per ogni modifica, ad esempio test, aggiunta di unit test e documentazione di aggiornamento. I modelli di richiesta pull consentono agli sviluppatori di creare descrizioni di richieste pull ideali per soddisfare gli standard dell'organizzazione.

Questo articolo illustra come iniziare a usare i modelli di richiesta pull.

Nota

I modelli di richiesta pull possono fornire indicazioni, ma sono solo consultivi. Usare i criteri di ramo per applicare le procedure consigliate, ad esempio la richiesta di richieste pull per i rami chiave come main, che richiedono una compilazione corretta e l'applicazione dei revisori necessari. Per altre informazioni, vedere Criteri di ramo.

Che cos'è un modello di richiesta pull?

Un modello di richiesta pull è un file contenente il testo Markdown aggiunto alla descrizione della richiesta pull quando viene creata la richiesta pull.

Thank you for your contribution to the Fabrikam Fiber repo. 
Before submitting this PR, please make sure:

- [ ] Your code builds clean without any errors or warnings
- [ ] You are using approved terminology
- [ ] You have added unit tests

Azure Repos consente di creare il tipo di modelli di richiesta pull seguenti:

  • Modello di richiesta pull predefinito applicato automaticamente per tutte le nuove richieste pull nel repository, a meno che non venga eseguito l'override da un modello di richiesta pull specifico del ramo
  • Modelli di richiesta pull specifici del ramo applicati automaticamente alle richieste pull destinate a un ramo specifico
  • Altri modelli di richiesta pull che possono essere aggiunti facoltativamente dall'autore della richiesta pull

Il tipo di modello di richiesta pull è determinato dal nome file e dalla posizione della cartella, come illustrato nelle sezioni seguenti. I nomi dei file e le posizioni delle cartelle non sono distinzione tra maiuscole e minuscole, ma devono trovarsi nel ramo predefinito del repository.

Nota

Tutti i file di modello di richiesta pull devono trovarsi nel ramo predefinito (in genere principale) del repository. Vengono usati solo i file di modello di richiesta pull dal ramo predefinito.

Modelli di richiesta pull predefiniti

I modelli di richiesta pull predefiniti vengono applicati automaticamente al campo descrizione quando viene creata una nuova richiesta pull. Per configurare il repository con un modello di richiesta pull predefinito, creare un file denominato pull_request_template.md o pull_request_template.txt salvarlo nel ramo predefinito del repository in una delle cartelle seguenti.

  • Cartella denominata .azuredevops contenuta nella cartella radice del repository
  • Cartella denominata .vsts contenuta nella cartella radice del repository
  • Cartella denominata docs contenuta nella cartella radice del repository
  • Cartella radice del repository

Sono disponibili più posizioni per offrire flessibilità in cui archiviare i modelli di richiesta pull. Quando viene creata una richiesta pull, Azure Repos cerca le cartelle designata nell'ordine specificato e usa il primo modello di richiesta pull predefinito trovato.

Quando viene creata una nuova richiesta pull nel repository, a meno che non venga applicato un modello di richiesta pull specifico di ramo , il contenuto del modello di richiesta pull predefinito viene usato per precompilare il campo descrizione nella richiesta pull.

Modello di richiesta pull predefinito

È possibile modificare o aggiungere a questa descrizione e aggiungere modelli di richiesta pull aggiuntivi se desiderati selezionandoli dall'elenco a discesa Aggiungi un modello .

Nota

Quando viene applicato automaticamente un modello di richiesta pull predefinito o ramo, sostituisce i messaggi di commit standard usati in genere per la descrizione predefinita. È possibile aggiungerli di nuovo selezionando Aggiungi messaggi di commit.

Modelli di richiesta pull specifici del ramo

È possibile configurare modelli di richiesta pull specifici per le richieste pull destinate a un ramo specifico. Per configurare il repository con un modello di richiesta pull specifico del ramo, creare un .txt file o .md denominato dopo il ramo. Il nome deve corrispondere al primo livello del nome del ramo, ad esempio main, dev, releaseo feature. Ogni modello di richiesta pull specifico del ramo viene applicato ogni volta che una richiesta pull è destinata a tale ramo o a qualsiasi ramo contenuto. Ad esempio, il modello di richiesta pull denominato feature.md verrà applicato se una richiesta pull ha come destinazione il feature ramo o qualsiasi feature/* ramo.

I modelli di richiesta pull specifici del ramo devono essere salvati nel ramo predefinito del repository usando la gerarchia di cartelle seguente: pull_request_template/branches/. Queste cartelle devono essere basate su una delle cartelle seguenti nel repository.

  • Cartella denominata .azuredevops contenuta nella cartella radice del repository
  • Cartella denominata .vsts contenuta nella cartella radice del repository
  • Cartella denominata docs contenuta nella cartella radice del repository
  • Cartella radice del repository

Ad esempio, un modello di richiesta pull specifico del ramo che deve essere applicato a tutte le richieste pull nel dev ramo sarà denominato dev.md o dev.txt si trova in una delle posizioni seguenti.

  • <repository root>/.azuredevops/pull_request_template/branches/
  • <repository root>/.vsts/pull_request_template/branches/
  • <repository root>/docs/pull_request_template/branches/
  • <repository root>/pull_request_template/branches/

Analogamente ai modelli di richiesta pull predefiniti, sono disponibili più percorsi per offrire flessibilità in cui si archiviano modelli di richiesta pull specifici del ramo. Quando viene creata una richiesta pull, Azure Repos cerca le cartelle designate nell'ordine specificato per un modello di richiesta pull specifico del ramo e usa il primo che trova che corrisponde al nome del ramo. Se non viene trovato alcun modello di richiesta pull specifico del ramo, Azure Repos cercare un modello di richiesta pull predefinito, come descritto nella sezione Modelli di richiesta pull predefiniti precedente.

Modello di richiesta pull specifico del ramo

Modelli di richiesta pull aggiuntivi

Oltre ai modelli di richiesta pull predefiniti e di ramo, è possibile configurare modelli di richiesta pull aggiuntivi. Questi possono essere .md o .txt file, che si trovano in una delle cartelle seguenti nel ramo predefinito.

  • <repository root>/.azuredevops/pull_request_template/
  • <repository root>/.vsts/pull_request_template/
  • <repository root>/docs/pull_request_template/
  • <repository root>/pull_request_template/

Quando viene creata una richiesta pull, è possibile aggiungere uno dei modelli di richiesta pull disponibili scegliendoli dall'elenco a discesa Aggiungi un modello . I nomi nell'elenco a discesa sono basati sui nomi dei file dei modelli.

Nell'esempio seguente sono elencati tre modelli.

  • dev.md - Si tratta del modello specifico del ramo applicato per impostazione predefinita a questa richiesta pull nel ramo di sviluppo, come indicato dal messaggio predefinito elencato dopo il nome file.
  • additional.md - Si tratta di un modello aggiuntivo.
  • pull_request_template.md - Questo è normalmente il modello predefinito, ma è stato sottoposto a override dal modello specifico del dev.md ramo in questa richiesta pull. Anche se non è stato aggiunto per impostazione predefinita, può comunque essere applicato selezionandolo dall'elenco.

Modello di richiesta pull aggiuntivo

Selezionare il nome del modello aggiuntivo desiderato per aggiungere il contenuto alla descrizione della richiesta pull corrente.

Aggiunta di un modello di richiesta pull aggiuntivo

Nota

È possibile specificare un modello di richiesta pull per eseguire l'override di qualsiasi richiesta pull predefinita o di ramo corrispondente aggiungendo ?template=name.md alla querystring.

Vedi anche