Gestione delle modifiche in conflitto

Ci sono dei casi in cui due utenti modificano gli stessi file e quando il secondo per eseguire il commit nel repository tenta di seguire il commit delle sue modifiche, il repository non lo consente a causa del conflitto. Segue una simulazione in cui Fred e Jane modificano gli stessi file.

  1. Nello spazio di lavoro di Fred, aprire una vista Selezione e modificare il file file1.txt. Rendere il testo come il seguente:
    Fred line 1
    This is the contents
    Fred-update
    of file 1.
    
  2. Fred modificherà anche file2.txt nel modo seguente:
    File2 is a (Fred was here again)
    with simple text.
    
  3. Fred ha eseguito il commit delle sue modifiche nel repository.
  4. In seguito, Jane ha apportato contemporaneamente alcune modifiche al file1.txt. Ha aggiunto la seguente riga alla fine del file:
    This is the contents
    Fred-update
    of file 1.
    Jane was at the end
    
  5. Infine, Jane ha modificato file2.txt nel modo seguente:
    File2 is a (Jane was here) small file
    with simple text.
    
  6. Quando Jane ha terminato le modifiche, ha sincronizzato il progetto e la vista Sincronizzazione ha visualizzato quanto segue: Conflitto mostrato nella vista Sincronizzazione e nell'editor di confronto
  7. Entrambi i file file1.txt e file2.txt presentano un'icona rossa che indica che contengono modifiche in conflitto. Non è possibile eseguire il commit dei file finché non vengono risolti i conflitti. Fare clic su file1.txt e notare che Fred e Jane hanno apportato modifiche a due differenti parti del file. In questo caso, Jane può semplicemente aggiornare il file e le righe aggiunte da Fred verranno unite al file locale di Jane. Selezionare file1.txt e dal menu di scelta rapida selezionare Aggiorna.
  8. In seguito, fare doppio clic su file2.txt per visualizzare il conflitto. In questo caso è possibile vedere che Jane e Fred hanno modificato la stessa riga. Per questo tipo di modifica in conflitto, un aggiornamento normale non riesce a risolvere il conflitto. Di seguito sono riportate tre opzioni possibili (con il comando da utilizzare in parentesi): accettare le modifiche di Fred (Sostituisci e aggiorna), ignorare le modifiche di Fred (Contrassegna come unito) o unire manualmente i file nell'editor di confronto. Editor di confronto che mostra un conflitto
  9. Per questo esempio, Jane ha aggiornato file1.txt e selezionato Sostituisci e aggiorna per file2.txt. In seguito a queste operazioni, il conflitto si trasforma in modifiche in uscita. Jane può rivedere le modifiche ed eseguirne il commit.