Ottenere commenti e suggerimenti con le richieste pull

Le richieste pull supportano la revisione e l'unione del codice in un unico processo collaborativo. Dopo che uno sviluppatore aggiunge una funzionalità o una correzione di bug, crea una richiesta pull per avviare il processo di unione delle modifiche nel ramo upstream. Gli altri membri del team hanno quindi la possibilità di esaminare e approvare il codice prima che venga finalizzato. Usare le richieste pull per esaminare i lavori in corso e ottenere feedback anticipato sulle modifiche. Ma non c'è alcun impegno a unire le modifiche. Un proprietario può abbandonare una richiesta pull in qualsiasi momento.

Ottenere il codice esaminato

La revisione del codice eseguita come parte di una richiesta pull non è solo per trovare bug evidenti; questo è ciò che i test sono per. Una buona revisione del codice rileva problemi meno evidenti che potrebbero causare problemi costosi in un secondo momento.

Le revisioni del codice aiutano a proteggere il team da merge non valido e build interrotte che saprà la produttività del team. Le revisioni rilevano i problemi prima dell'unione, proteggendo rami importanti da modifiche indesiderate.

Le revisioni del codice incoraggiano e rafforzano anche la collaborazione e la comunicazione tra sviluppatori. E il team ottiene una cronologia chiara di tutte le modifiche apportate tra il ramo principale e i rami di funzionalità.

Competenze cross-impollinazione e diffusione di strategie di risoluzione dei problemi usando un'ampia gamma di revisori nelle revisioni del codice. La diffusione di competenze e conoscenze rende il team più forte e più resiliente.

Condividere feedback utile

Le revisioni di qualità elevata iniziano con feedback di qualità elevata. Gli elementi essenziali per un feedback utile in una richiesta pull sono:

  • Selezionare le persone adatte per la revisione della richiesta pull.
  • Assicurarsi che i revisori sappiano cosa fa il codice.
  • Fornire feedback di utilità pratica e costruttivo.
  • Rispondere ai commenti in modo tempestivo.

Quando si assegnano revisori a una richiesta pull, assicurarsi di selezionare il set corretto di revisori. I revisori devono sapere come funziona il codice, ma includono anche sviluppatori che lavorano in altre aree in modo che possano condividere le proprie idee.

Fornire una descrizione chiara delle modifiche e fornire una compilazione del codice che include la correzione o la funzionalità in uso. I revisori devono fare uno sforzo per fornire commenti e suggerimenti sulle modifiche che non sono d'accordo. Identificare il problema e fornire suggerimenti specifici su cosa potrebbe essere fatto in modo diverso. Questo feedback ha una finalità chiara ed è facile da comprendere per il proprietario della richiesta pull.

Il proprietario della richiesta pull deve rispondere ai commenti, accettare suggerimenti o spiegare perché rifiuta di applicarli. Alcuni suggerimenti sono validi, ma potrebbero non rientrare nell'ambito della richiesta pull. Accettare questi suggerimenti e creare nuovi elementi di lavoro e rami di funzionalità separati dalla richiesta pull per apportare queste modifiche.

Proteggere i rami con i criteri

Esistono alcuni rami critici in un repository che i team si basano sempre su una buona forma, ad esempio il main ramo. Teams può richiedere richieste pull per apportare modifiche a questi rami con piattaforme come GitHub e Azure DevOps. Il push delle modifiche effettuato dagli sviluppatori direttamente ai rami protetti verrà rifiutato.

Aggiungere altre condizioni per eseguire il pull delle richieste per applicare un livello superiore di qualità del codice nei rami chiave. Una compilazione pulita del codice unito e l'approvazione di più revisori sono alcuni requisiti aggiuntivi spesso impiegati per proteggere i rami chiave.

Altre informazioni

GitHub include una documentazione completa su come proporre modifiche al lavoro con le richieste pull.

Altre informazioni su come fornire commenti e suggerimenti utili nelle revisioni del codice e sull'uso di modelli di richiesta pull per fornire indicazioni ai revisori. Azure DevOps offre anche un'esperienza avanzata di richiesta pull facile da usare e ridimensionare in base alle esigenze.