Supponiamo di avere l'ultima versione di un file dal controllo del codice sorgente e che si verifichi un conflitto. Esistono quattro possibili tipi di modifiche nel conflitto:
- Il tuo
- Il loro
- Entrambi
- in conflitto
Naturalmente, nei casi 3 e 4, vorrai rivedere le modifiche manualmente (in quest'ultimo caso dovrai anche risolverlo). Per quanto riguarda i casi 1 e 2, non ne sono sicuro, ma sto pensando che solo i cambiamenti di tipo 2 (Theirs) dovrebbero richiedere un'ispezione manuale. Essendo la ragione, sai cosa hai cambiato, al contrario delle "loro" modifiche che potrebbero infrangere le tue modifiche. Quindi penso che si possa saltare la revisione delle proprie modifiche (caso 1) e rivedere / risolvere manualmente le altre modifiche (casi 2-4).
Altri sviluppatori hanno suggerito approcci più estremi, come solo la revisione delle modifiche in conflitto (o "entrambe") e l'integrazione della fiducia per il resto. L'altro estremo è rivedere tutte le modifiche ogni volta.
Naturalmente, altri parametri potrebbero essere utili. Ad esempio, se hai apportato una correzione singola a un file e ci sono 200 modifiche apportate da altri, allora puoi essere ragionevolmente sicuro che il tuo cambiamento non è correlato (ad esempio, è un file SQL e hai scritto una nuova stored procedure separata), forse puoi saltare la revisione delle altre modifiche.
Sono combattuto tra i pericoli di non ispezionare i cambiamenti e il tempo e l'energia che potrebbero essere salvati confidando nell'unione automatica. Presumibilmente, hai i test di compilazione e unit / component / e2e che metteranno in luce cattive fusioni.