Condividi tramite


Aggiornamento manuale

Quando si aggiornano gli elementi in un'area di lavoro o si annulla un commit, è sempre possibile che uno o più elementi avranno esito negativo. L'area di lavoro non riesce ad aggiornarsi se l'aggiornamento in ingresso dal ramo Git causa incoerenze o altri problemi nell'area di lavoro difficili da prevedere. Quando non è possibile aggiornare un elemento, il processo di aggiornamento si arresta. Se l'elemento che non è riuscito nell'aggiornamento è il primo o il solo elemento a non essere stato aggiornato, l'area di lavoro rimane sincronizzata con il ramo originale. Se un elemento non è riuscito nell'aggiornamento dopo che uno o più elementi lo hanno completato, si verifica una situazione in cui soltanto alcuni elementi vengono sincronizzati. In questo caso, l'area di lavoro non viene sincronizzata con alcun ramo Git.

Un aggiornamento può avere esito negativo per molti motivi. I possibili motivi includono, ad esempio, i problemi seguenti:

  • Gli elementi dipendenti sono stati modificati o eliminati
  • Sono state create dipendenze circolari
  • L'elemento è stato rinominato
  • Dati dell'elemento non validi

Nota

Ciò non equivale alla risoluzione dei conflitti. Se vengono apportate modifiche allo stesso elemento sia nell'area di lavoro che nel ramo Git, ciò causa un conflitto e gli aggiornamenti sono disabilitati. Questo articolo illustra come procedere nel caso in cui un'area di lavoro non riesca a portare a termine l'aggiornamento seppur in assenza di conflitti diretti.

Un messaggio di errore consente di sapere quale elemento abbia avuto esito negativo e perché.

Screenshot che mostra il messaggio di errore quando un aggiornamento ha esito negativo.

Questo messaggio di errore viene visualizzato quando l'aggiornamento ha esito negativo. Tutti gli utenti che tentano di accedere all'area di lavoro dopo aver visto l'errore seguente fino al completamento dell'aggiornamento.

Screenshot che mostra il messaggio di errore quando l'utente tenta di connettersi a un'area di lavoro dopo un aggiornamento non riuscito.

Selezionare Visualizza dettagli per visualizzare il messaggio di errore precedente.

Stati di Git dopo un errore di un elemento

Ora, l'area di lavoro contiene gli elementi seguenti:

  • Elemento o elementi aggiornati prima dell'errore. Questi elementi sono identici agli elementi in Git, ma i metadati non sono aggiornati. Hanno uno stato Git sincronizzato, ma con un segno di avviso a triangolo.
  • L'elemento in errore. Questo elemento ha lo stato Git Aggiornamento necessario.
  • È possibile che gli elementi non siano stati ancora aggiornati al momento dell'errore dell'elemento. Questi elementi non sono ancora stati aggiornati e hanno lo stato di Aggiornamento necessario.

La barra di stato nella parte inferiore della schermata che mostra lo stato di sincronizzazione più recente è rossa e indica lo stato parzialmente sincronizzato.

Screenshot che mostra la riga di stato nella parte inferiore della schermata quando un aggiornamento non va a buon fine.

Aggiornare l'elemento che ha riscontrato l'errore

Per aggiornare manualmente l'area di lavoro dopo che non è stato possibile l'aggiornamento automatico:

  1. Individuare l'elemento che causa l'esito negativo dell'aggiornamento e quale sia problema, usando la finestra di dialogo di errore che indica quale elemento ha causato l'esito negativo e il messaggio di errore.
  2. Risolvere il problema in Git. Ciò può significare eseguire una o più delle operazioni seguenti, a seconda che il problema sia:
    • Ripristinare l'elemento a una versione precedente che non abbia esito negativo
    • Modificare l'elemento per risolvere il problema
    • Ripristinare un elemento dipendente che è stato eliminato
    • Eliminare un elemento non supportato che dipende dall'elemento eliminato
  3. Tornare all'area di lavoro e Aggiornare nuovamente l'intera area di lavoro.

Considerazioni e limitazioni

Il processo di aggiornamento ha esito negativo non appena un elemento ha esito negativo. Pertanto, non è possibile sapere se anche altri elementi nel ramo Git presentino problemi. Se si aggiornano molti elementi e più di un elemento presenta problemi, è necessario ripetere questo processo una volta per ciascun elemento con esito negativo.

Risoluzione dei conflitti