Vai al contenuto

Ricezione di una richiesta di revisione pull

La richiesta di pull è stata inviata e sta passando il CI. Ora è pronta per essere esaminata.

tl;dr - Il processo di revisione

La versione breve del processo di revisione:

  1. Aspettate una recensione.
  2. Rispondere al feedback.
  3. Se sono richieste modifiche:
  4. Lavorare per completare le modifiche richieste.
  5. Presentare tutte le modifiche richieste.
  6. Richiedere nuovamente una revisione quando tutte le modifiche richieste sono state presentate.
  7. Ripetere la sezione tre fino a quando non saranno necessarie altre modifiche.
  8. Attendere che la richiesta di pull venga approvata e unita.

Congratulazioni! Hai appena dato un contributo a {{ nome_formale }}!

Ho inviato la mia richiesta di pull, qual è il prossimo passo?

Dopo aver inviato la richiesta di pull, è necessario attendere una revisione del proprio contributo. Il processo di revisione ha due aspetti: fornire una revisione e ricevere una revisione.

Rivedere le aspettative

Dovete aspettarvi che chiunque esamini i vostri contributi segua queste linee guida, comprese le recensioni dei membri del team principale. Dovete seguire queste linee guida anche quando revisionate i contributi di altri.

Se ritieni che il tuo revisore si stia allontanando da queste aspettative e ti senti a tuo agio nel sollevare il problema personalmente nella richiesta di pull, puoi farlo. Se non ti senti a tuo agio, contatta il BeeWare Code of Conduct Response Team. Esamineremo la tua segnalazione e ci metteremo in contatto con il tuo revisore. Il follow-up rifletterà l'azione segnalata; una trasgressione minore può comportare una discussione, mentre una violazione grave può comportare qualcosa di più serio.

Fornire una recensione

Tutti sono invitati a fornire una recensione su qualsiasi richiesta di pull. Queste linee guida descrivono le nostre aspettative nei confronti di una revisione, indipendentemente dal fatto che sia fornita da un membro del team principale o da un membro della comunità.

Un membro del team centrale dovrà sempre fornire la revisione finale; ma le revisioni da parte dei membri della comunità possono essere un modo utile per snellire il processo - idealmente, la revisione da parte del team centrale sarebbe una formalità dopo che le revisioni della comunità hanno identificato tutti i problemi principali.

Ricevere una recensione

La ricezione di una revisione comporta tre fasi fondamentali:

  1. Feedback iniziale e domande.
  2. Richieste di modifica.
  3. Approvazione e fusione.

Ogni fase è descritta in dettaglio qui di seguito. Se in qualsiasi momento del processo avete domande, non esitate a chiedere! Siamo felici di aiutarvi.

Tempistica e feedback iniziale

Il team centrale mira a garantire che ogni richiesta di pull riceva una revisione entro dieci giorni lavorativi. Tuttavia, nel caso di richieste più complesse, o quando una richiesta di pull viene presentata quando alcuni membri del team sono in ferie, questa tempistica può essere prolungata.

In genere manteniamo una continuità con i revisori per ogni richiesta di pull, cioè è probabile che si lavori con lo stesso revisore per l'intera revisione. Ciò significa che il vostro revisore avrà un contesto durante tutto il processo e potrete imparare cosa aspettarvi in termini di cadenza di risposta e stile di revisione. Se il revisore iniziale ritiene di non avere le competenze necessarie per esaminare le richieste di pull, o sa che non sarà disponibile per qualche motivo, può passare la responsabilità della richiesta di pull a un altro membro del team.

Potete aspettarvi che rispondiamo a ogni scambio entro dieci giorni lavorativi. Rispondere ai feedback e alle domande è una parte essenziale del processo di revisione. Ci aspettiamo una risposta da parte vostra prima di passare alla fase successiva del processo.

Richieste di modifica

Nella maggior parte dei casi, il revisore richiederà modifiche alla richiesta di pull. Questo non è necessariamente un riflesso del vostro lavoro, è semplicemente parte del processo.

Se la revisione iniziale rivela un numero significativo di problemi, la prima revisione potrebbe non essere completa. Si concentrerà invece sul fornire indicazioni di alto livello sul lavoro necessario per portare la richiesta di pull in uno stato unificabile. Il processo di revisione può includere domande per chiarire lo scopo e la portata del lavoro che è stato tentato.

Lavorare sulle modifiche richieste

Il revisore invierà commenti alla richiesta di pull. Questi commenti possono essere generali, su un file specifico o su una o più righe di codice specifiche. A volte includeranno modifiche direttamente suggerite che potrete applicare alla vostra richiesta di pull attraverso l'interfaccia utente di GitHub. In genere, si tratta di domande, richieste di chiarimenti o indicazioni sugli aggiornamenti.

Contrassegnare una conversazione come risolta

Durante la parte di discussione del processo di feedback, non si deve mai contrassegnare come "risolta" una conversazione iniziata dal revisore. Segnare la conversazione come risolta è responsabilità del revisore. Spetta a lui stabilire se il problema identificato è stato risolto.

Se la revisione rivela un problema sistematico (ad esempio, un'incoerenza di denominazione presente nel codice), il revisore può non evidenziare ogni istanza del problema. Può invece scegliere un paio di esempi del problema e indicare che anche altri casi dovrebbero essere corretti. Se la revisione evidenzia un problema in un punto e voi pensate che possa essere applicato anche altrove, dovrete correggere il problema ovunque si presenti. Se non siete sicuri, chiedete chiarimenti al vostro revisore.

Presentare tutte le modifiche richieste

Una volta apportate tutte le modifiche richieste, è possibile inviare un aggiornamento alla richiesta di pull. Una volta confermato che il CI sta passando, si può inviare un commento per richiedere una revisione aggiornata e il team centrale esaminerà nuovamente la richiesta di pull.

Spingi, non forzare né rebase

Quando si aggiorna la richiesta di pull durante una revisione, è importante lasciare intatta la cronologia dei commit. Non importa se c'è una lista enorme di commit; vengono tutti schiacciati quando uniamo la richiesta di pull. Se si forza il push o il rebase della richiesta di pull nel bel mezzo di una revisione, si potrebbe rimuovere un contesto importante necessario al revisore.

Richiedi nuovamente una recensione

Una volta risolte tutte le modifiche richieste in una determinata revisione e il CI sta passando di nuovo, è possibile richiedere nuovamente una revisione al revisore. Se un problema è particolarmente complicato e la correzione di una cosa ha un impatto su un'altra, si può chiedere una revisione sul pezzo specifico che si è aggiornato. Si presuppone che ogni richiesta di revisione sia una richiesta di revisione completa. Se non siete pronti per una revisione completa, assicuratevi di specificare esattamente cosa state cercando.

Approvazione e fusione delle richieste di pull

Una volta che tutte le richieste di modifica sono state completate, la richiesta di pull sarà approvata. Nella maggior parte dei casi, una volta approvata una richiesta di pull, la uniremo immediatamente. In alcuni casi, ci possono essere circostanze attenuanti, come ad esempio il fatto di basarsi su un'altra richiesta di pull non ancora unita, che porteranno a un ritardo. Lo comunicheremo nei commenti, in modo che possiate conoscere la situazione.