Risolvere conflitti tra file
Un vantaggio nell'utilizzare Controllo della versione di Team Foundation è quello di gestire i file, consentendo a diverse persone di lavorare contemporaneamente su un file.Uno svantaggio si verifica quando in alcuni casi, è necessario risolvere i conflitti prima di poter ottenere, archiviare, rielaborare, unire, o annullare i file.
Sebbene possa essere frustrante rilevare i conflitti, il sistema fornisce informazioni e strumenti per aiutare a capire come risolvere i conflitti.
Suggerimento |
---|
Come impostazione predefinita, il sistema tenta automaticamente di Risolvi tutti automaticamente i conflitti, a meno che sia stata disattivata questa opzione (vedere Suggerimenti). |
Autorizzazioni necessarie
È necessario avere uno dei Collaboratori per il progetto team.Vedere Gruppi predefiniti, autorizzazioni e ruoli di Team Foundation Server.
Scegliere l'argomento con cui si desidera procedere
Gestire e ottenere informazioni sui conflitti
Risoluzione automatica di tutti i conflitti
Unione automatica di un singolo conflitto
Risoluzione manuale di un singolo conflitto
Individuare le opzioni automatiche
Individuare le opzioni di confronto
Lavorare dal prompt dei comandi
Ottenere i consigli
Finestra di risoluzione dei conflitti
La finestra di risoluzione dei conflitti viene visualizzato automaticamente quando si tenta di eseguire un'operazione bloccata da uno o più conflitti.
Per impostazione predefinita, nella finestra vengono visualizzati solo i conflitti causati dal tentativo di esecuzione dell'operazione più recente.Quando la finestra è in questo stato, viene visualizzato un messaggio che inizia con: Filtro percorso applicato.Per mostrare tutti i conflitti nell'area di lavoro, scegliere Leggi tutti i conflitti.Un messaggio che inizia con: visualizza n Conflitti.
Se è passato molto tempo da quando sono state apportate modifiche ad i file nell'area di lavoro, è possibile che in questo periodo di tempo si siano verificati nuovi conflitti.Per aggiornare la finestra Risolvi conflitti, scegliere Aggiorna.
Ogni conflitto contiene informazioni e talvolta collegamenti che possono aiutare a risolverlo.Per ulteriori informazioni, è possibile selezionare il conflitto e scegliere:
Cronologia per visualizzare la cronologia di un file.Se l'operazione che ha causato il conflitto è un Unione o un operazione di Rollback, allora è possibile scegliere nel menu di controllo a destra di Cronologia, quindi selezionare Cronologia origine oppure Cronologia destinazione.
Aggiunta annotazioni per visualizzare i dettagli relativi a tutte le modifiche apportate alla versione più recente del file, incluso chi ha apportato ogni modifica e quando è stata apportata.Vedere Visualizzare le modifiche ai file mediante l'annotazione.
Confronta (o il menu a destra del pulsante e quindi scegliere un comando).La Finestra di Confronto viene visualizzata.
Risoluzione automatica di tutti i conflitti
Come impostazione predefinita, il sistema tenta automaticamente di Risolvi tutti automaticamente i conflitti, a meno che sia stata disattivata questa opzione (vedere Suggerimenti).Nella finestra di risoluzione dei conflitti, è inoltre necessario scegliere Risolvi tutti automaticamente, quindi scegliere:
Selezionare Tutti i tipi di conflitto se si desidera che il sistema tenti di risolvere automaticamente i conflitti utilizzando tutte le regole euristiche.
Selezionare Tipi di conflitto specifici se si desidera che il sistema tenti di risolvere i conflitti, ma si desidera escludere alcune regole euristiche.
Viene visualizzata la finestra di dialogo Scegliere i conflitti da risolvere.Selezionare o deselezionare le opzioni che si desidera abilitare o disabilitare, quindi scegliere Risolvi automaticamente.Per ulteriori informazioni, vedere di seguito Opzioni di risoluzione automatica .
Il sistema tenta di risolvere automaticamente i conflitti visualizzati nella finestra Modifiche in sospeso.Tutti i conflitti che il sistema non è in grado di risolvere rimarranno nella finestra.È necessaria la risoluzione manuale di questi conflitti.
Unire automaticamente un singolo conflitto
Scegliere Unire automaticamente se si desidera provare a risolvere i conflitti selezionati utilizzando le opzioni di unione automatica descritte di seguito in Opzioni di risoluzione automatica .
Suggerimento |
---|
È possibile premere e tenere premuto il tasto CTRL oppure il tasto MAIUSC per selezionare più conflitti. |
[!NOTA]
Se l'opzione Unisci automaticamente è disabilitata, il conflitto deve essere risolto manualmente.
Risolvere manualmente un singolo conflitto
Se il sistema non è in grado di risolvere automaticamente un conflitto, oppure se si desidera assicurarsi di comprendere cosa viene modificato, è necessario risolvere il conflitto.All'interno di ogni conflitto, il sistema visualizza le azioni che è possibile eseguire per risolvere il conflitto.Le azioni visualizzate dipendono dal tipo di conflitto e dall'operazione che ha causato il conflitto.
Modifiche di unione nello strumento di unione
Quando un conflitto è causato dalle modifiche del contenuto, è possibile scegliere Modifiche di unione nello strumento di unione.
Quando si sceglie questa operazione, viene visualizzata la finestra di Merge.
Il risultato del lavoro per la risoluzione di un conflitto viene visualizzato nel riquadro Risultati.
In questa finestra è possibile:
Selezionare il layout della finestra: Visualizzazione verticale, Visualizzazione orizzontale, Visualizzazione mista.
Esplorare tra le differenze e i conflitti.
Selezionare gli elementi, da versioni di sinistra e destra del file, per includerli nel risultato.
Digitare contenuto aggiuntivo nel file nel riquadro dei risultati.
Visualizzare la cronologia del file.Vedere Ottenere la cronologia di un elemento.
Confrontare le diverse versioni del file.
Annotare i file per controllare chi li ha modificati.Vedere Visualizzare le modifiche ai file mediante l'annotazione.
Quando vengono soddisfatti i contenuti nel pannello Risultato, scegliere Accetta merge.
Individuare le opzioni automatiche
In alcuni casi speciali, è consigliabile limitare i tipi di conflitti risolti automaticamente tramite l'opzione Risolvi tutti automaticamente .
Quando si sceglie Risolvi tutti automaticamente, quindi Tipi di conflitto specificati, la finestra di dialogo Scegliere i conflitti da risolvere viene visualizzata.
Se si desidera che il sistema risolvi automaticamente i conflitti che si sono verificati a causa... |
Come descritto in questo esempio |
Selezionare questa casella di controllo |
---|---|---|
Sono state apportate modifiche del contenuto non in conflitto in ogni versione di un file |
Nella versione del file a sinistra è stato aggiunto uno zero iniziale.Nella versione del file a destra è stato aggiunto un tre finale: |
Conflitti con qualsiasi modifica del contenuto |
Sono state apportate modifiche al contenuto univoche dell'area di lavoro (durante un'operazione get o di archiviazione) o della versione di destinazione (durante un'operazione di unione o di rollback) |
Sono stati aggiunti quattro e cinque all'area di lavoro o alla versione di destinazione: |
Conflitti con modifiche del contenuto apportate solo nell'area di lavoro locale o nel ramo di destinazione |
Sono state apportate modifiche al contenuto univoche del server (durante un'operazione get o di archiviazione) o della versione di origine (durante un'operazione di unione o di rollback) |
Sono stati aggiunti quattro e cinque a server o alla versione di origine: |
Conflitti con modifiche del contenuto apportate solo nella versione del server o nel ramo di origine |
È stato rinominato un file sul server (durante un'operazione get o di archiviazione) o nel ramo di origine (durante un'operazione di unione o di rollback) |
È stato estratto e utilizzato un file denominato launch.cs.Durante tale intervallo di tempo un altro utente ha archiviato un insieme di modifiche che hanno interessato lo stesso file.Tale insieme di modifiche non ha modificato il contenuto del file, bensì il nome in start.cs. |
Conflitti causati dalla ridenominazione del file nella versione del server o nel ramo di origine |
|
Le modifiche apportate a ogni versione hanno prodotto un file dal contenuto identico.Le modifiche possono essere state apportate al contenuto dei file, come illustrato nell'esempio seguente: Questa opzione risolve anche i conflitti causati da tutte le altre operazioni, quali ridenominazione, eliminazione, annullamento dell'eliminazione e creazione di un ramo, e che producono file identici.
Suggerimento
Se si seleziona questa casella di controllo, quando si procede il sistema risolverà queste modifiche ottenendo (scaricando) la versione del server nell'area di lavoro.
|
Conflitti causati da una modifica identica nell'area di lavoro del server e in quella locale. |
Lavorare dal prompt dei comandi
Suggerimenti
Come impostazione predefinita il sistema tenta automaticamente di applicare Risolvi tutti automaticamente i conflitti..Per modificare l'opzione, dalla barra dei menu scegliere Strumenti, Opzioni, e quindi nella finestra di dialogo Opzioni, passare a Controllo del codice sorgente, Visual Studio Team Foundation Server.Deselezionare la casella di controllo Tentare di risolvere automaticamente i conflitti quando vengono generati.
Il team deve collaborare per la risoluzione del maggior numero di conflitti possibili, (ad esempio potrebbero verificarsi dopo un'operazione di unione di codebase di grandi dimensioni)?Se è cosi, un'area di lavoro pubblica in un computer dello sviluppatore potrebbe aiutare.Vedere Creare e utilizzare aree di lavoro.