Sincronizzazione dello spazio di lavoro CVS

Le sincronizzazioni dello spazio di lavoro CVS avviate utilizzando il commando del menu Team > Sincronizza o il comando della barra degli strumenti Sincronizza nella prospettiva Team verranno visualizzate nella vista Sincronizzazione. Questa vista consente di esaminare le differenze tra le risorse del workbench locali e le controparti remote nonché di aggiornare le risorse presenti nel workbench ed eseguire il commit delle risorse dal workbench in un repository.

La Sincronizzazione dello spazio di lavoro CVS nella vista Sincronizzazione ha il seguente aspetto:

Sincronizzazione dello spazio di lavoro CVS

Funzioni

Di seguito viene riportato un breve riepilogo di alcune delle funzioni della vista Sincronizzazione.

Stato di sincronizzazione

La vista Sincronizzazione mostra lo stato di sincronizzazione delle risorse presenti nello spazio di lavoro in confronto a quelle nel repository. Questo stato viene visualizzato mediante icone è può anche essere configurato per mostrare lo stato come testo accodato al nome della risorsa. Una descrizione delle icone viene mostrata nella tabella sottostante:

Icona Aggiunta in entrata Una aggiunta in entrata indica che una risorsa è stata aggiunta al repository. Aggiornamento trasferirà la risorsa nello spazio di lavoro.
Icona Modifica in entrata Una modifica in entrata indica che il file è stato modificato nel repository. Aggiornamento trasferirà la nuova revisione del file nello spazio di lavoro.
Icona Eliminazione in entrata Una eliminazione in entrata indica che una risorsa è stata cancellata dal server. Aggiornamento eliminerà la risorsa locale.
Icona Aggiunta in uscita Una aggiunta in uscita indica che il file è stato aggiunto nello spazio di lavoro, ma non ancora nel repository. Aggiornamento e poi Esecuzione del commit trasferirà il nuovo file nel repository.
Icona Modifica in uscita Una modifica in uscita indica che il file è stato cambiato in locale. Esecuzione del commit sul file trasferirà le modifiche al repository e creerà una nuova revisione del file.
Icona Eliminazione in uscita Una eliminazione in uscita indica che una risorsa è stata cancellata in locale. Esecuzione del commit su questa risorsa causa l'eliminazione della risorsa remota. Nota: in CVS le directory non sono mai realmente eliminate dal repository. Al contrario, sono eliminati i file mentre le directory vuote sono rimosse dallo spazio di lavoro.
Icona Aggiunta in conflitto Una aggiunta in conflitto indica che la risorsa è stata aggiunta in locale e in remoto.
Icona Modifica in conflitto Una modifica in conflitto indica che il file è stato modificato in locale e in remoto. L'utente dovrà effettuale un'unione manuale o automatica. Inoltre, le voci della vista contenenti elementi figlio in conflitto verranno decorare con l'icona di conflitto. Ciò serve a trovare facilmente i conflitti.
Icona Eliminazione in conflitto Una eliminazione in confitto indica che la risorsa è stata eliminata in locale e in remoto.

Modalità

La vista Sincronizzazione può essere filtrata utilizzando una serie di modalità che utilizzano le azioni della barra degli strumenti o le voci di menu del menu a discesa della vista. Le modalità possono essere utilizzare per mostrare solo le modifiche in entrata, in uscita o in conflitto. Le modalità offrono i seguenti vantaggi:

Importante: è preferibile per prima cosa aggiornare le risorse nel workbench, risolvere eventuali conflitti esistenti mediante l'unione e, quindi, eseguire il commit delle risorse del workbench nel repository.

Modelli

La vista Sincronizzazione è in grado di visualizzare differenti rappresentazioni di modelli delle risorse. Ogni prodotto potrebbe contenere le proprie rappresentazioni specifiche. Eclipse SDK viene fornito con tre modelli:

Oltre ai modelli esiste anche una Presentazione semplice che visualizza tutti gli elementi non sincronizzati come elementi di livello superiore.

Navigazione

La vista Sincronizzazione fornisce una serie di azioni della barra degli strumenti per navigare tra le modifiche nella vista. Queste azioni non solo consentono di navigare tra i file ma anche di passare da una modifica a un'altra all'interno di un file.

Operazioni di aggiornamento e commit

Esistono diversi tipi di operazioni di aggiornamento e commit disponibili nella vista Sincronizzazione. È possibile eseguire un'operazione di aggiornamento e commit standard su tutte le modifiche applicabili visibili o un un sottoinsieme selezionato. È anche possibile decidere di eseguire sostituzione e aggiornamento, ignorando le modifiche locali, oppure sostituzione e commit, facendo in modo che la risorsa remota corrisponda al contenuto della risorsa locale. È inoltre possibile decidere di eliminare la data/ora per i file modificati localmente (forse da uno strumento di creazione esterno) ma i cui contenuti corrispondono a quelli del server.

Gestione dei conflitti

Quando si ha a che fare con i conflitti, è possibile prima eseguire un aggiornamento ed eventuali modifiche in conflitto. L'operazione di aggiornamento aggiornerà correttamente i conflitti che è possibile unire automaticamente (ad esempio le modifiche del contenuto di un file non vengono sovrapposte) ma ignorerà i file contenenti modifiche che si sovrappongono. In alternativa, i conflitti possono essere gestiti mediante l'utilizzo di un editor di confronto. Un editor di confronto può essere aperto facendo doppio clic (o semplicemente clic se la strategia di apertura è stata modificata nelle preferenze) sul conflitto oppure scegliendo Apri nell'editor di confronto dal menu di scelta rapida. L'editor di confronto consente di risolvere manualmente i conflitti presenti nel file. Al termine delle operazioni, selezionare Contrassegna come unito sul conflitto per indicare che le operazioni sono state completate. Questa azione modificherà il conflitto in una modifica in uscita.

Indicatori di problema

La vista Sincronizzazione mostrerà gli indicatori di problema errore o avvertenza per qualsiasi modifica, cartella o progetto visualizzati nella vista contenenti una risorsa con un tale indicatore di problema. Ciò avviene per evitare di eseguire il commit delle risorse con problemi nel repository.

Barra degli strumenti

Sincronizza

Questo comando consente di ripetere la sincronizzazione corrente che recupera lo stato remoto delle risorse. Il menu a discesa dell'elemento della barra degli strumenti consente di selezionare altre sincronizzazioni esistenti o crearne di nuove utilizzando il comando di menu Sincronizza....

Blocca la sincronizzazione corrente

Questo comando consente di bloccare o sbloccare la sincronizzazione corrente. Le sincronizzazioni bloccate non verranno sostituite dalla sincronizzazione successiva dello steso tipo, al contrario delle sincronizzazioni sbloccate. Ciò consente di mantenere accessibile una sincronizzazione. Una tale sincronizzazione verrà aggiornata automaticamente quando vengono eseguite le modifiche nelle risorse del workbench e può essere configurata in modo da eseguire gli aggiornamenti pianificati per mantenersi aggiornata con lo stato remoto delle risorse.

Elenco a discesa di modelli

Questo elenco a discesa contiene i modelli che è possibile visualizzare nella vista Sinc.

Differenza successiva

Questo comando consente di andare alla differenza successiva visualizzata dalla vista. Tutte le differenze presenti in un unico file verranno esaminate prima di aprire il file successivo nella vista.

Differenza precedente

Questo comando consente di andare alla differenza precedente visualizzata dalla vista. Tutte le differenze presenti in un unico file verranno esaminate prima di aprire il file precedente nella vista.

Comprimi tutto

Comprimere tutte le voci estese nella vista.

Modalità in entrata

In questa modalità, sono visibili solo le risorse che sono state modificate nel repository dall'ultima volta che sono state caricate o sincronizzate con quelle presenti nel workbench (modifiche in entrata).

Modalità in uscita

In questa modalità, verranno mostrate solo le risorse che sono state modificate nel workbench (modifiche in uscita).

Modalità in entrata e in uscita

In questa modalità vengono mostrate sia le modifiche in entrata che quelle in uscita ed è possibile aggiornare ed eseguire il commit di entrambe. Il vantaggio di utilizzare la doppia modalità consiste nel poter eseguire entrambe le attività. Lo svantaggio è dovuto al fatto che l'esecuzione di un'unione simultanea bidirezionale è spesso complicata.

Modalità conflitti

In questa modalità, vengono visualizzati solo i conflitti (risorse modificate nel workbench e nel repository).

Aggiorna tutte le modifiche in entrata

Questo comando aggiorna tutte le modifiche in entrata visibili nella vista. Il comando aggiornerà anche i conflitti che è possibile unire automaticamente ma ignorerà i file contenenti conflitti.

Esegui il commit di tutte le modifiche in uscita

Questo comando esegue il commit di tutte le modifiche in uscita visibili nella vista. I conflitti non sono inclusi nel commit.

Menu a discesa

Il menu a discesa consente di rimuovere o bloccare le sincronizzazioni correnti o tutte le sincronizzazioni, modificare la modalità o il layout, ripristinare le voci rimosse dalla vista, configurare la sincronizzazione corrente per eseguire aggiornamenti pianificati e impostare altre preferenze della vista.

Menu di scelta rapida

Dal menu di scelta rapida della vista Sincronizzazione è possibile eseguire una serie di operazioni interessanti.

Apertura

Questo comando apre la risorsa locale per la modifica selezionata nell'editor del workbench predefinito per il tipo di file.

Apri con

Questo comando consente di aprire la risorsa locale per la modifica selezionata in un editor del workbench.

Apri nell'editor di confronto

Questo comando apre la modifica selezionata in un editor di confronto che consente di esaminare le modifiche presenti nel file.

Modifica

Questo menu consente la ridenominazione, l'eliminazione, lo spostamento e la copia delle risorse.

Sincronizza

Questo comando aggiorna lo stato remoto delle risorse selezionate. Inoltre questo comando regola la data/ora delle modifiche in uscita i cui contenuti corrispondono già ai contenuti della risorsa corrispondente sul server in modo tale che il file non sia più una modifica in uscita. Questo comando è utile in situazioni in cui gli strumenti di creazione rigenerano file i cui contenuti non sono stati modificati.

Rimuovi dalla vista

Questo comando rimuove le risorse selezionate dalla vista. Le risorse vengono nuovamente visualizzate se lo stato delle risorse rimosse cambia, se viene riavviato il workbench o se viene richiamata l'azione Ripristina elementi rimossi dal menu a discesa.

Espandi tutto

Questo comando espande gli elementi figlio della risorsa selezionata.

Aggiornamento

Questo comando aggiorna le risorse selezionate. I conflitti possono essere inclusi in un'operazione di aggiornamento ma verranno aggiornati solo i conflitti che è possibile unire automaticamente. Gli altri conflitti verranno ignorati e uniti manualmente utilizzando un editor di confronto.

Esecuzione del commit

Questo comando esegue il commit delle risorse selezionate. È possibile eseguire il commit solo delle modifiche in uscita.

Sostituisci e aggiorna

Questo comando agisce sui conflitti e sulle modifiche in uscita e sostituisce i contenuti locali delle risorse con i contenuti del server.

Contrassegna come unito

Questo comando regola la data/ora CVS delle modifiche in conflitto in modo da renderle modifiche in uscita. Questo comando dovrebbe essere eseguito dopo l'unione manuale dei conflitti mediante l'utilizzo di un editor di confronto.

Aggiungi a .cvsignore

Questo comando aggiungerà la risorsa selezionata all'elenco .cvsignore che indicherà a CVS di ignorare la risorsa durante tutte le operazioni CVS.

Creazione patch

Questo comando visualizzerà la procedura guidata Creazione patch e inserirà al suo interno le risorse selezionate.

Crea sezione...

Questo comando creerà una nuova sezione e una nuova tag branch che è possibile utilizzare per unire la sezione a quella di origine.

Mostra annotazione

A seconda delle preferenze di Annotazione, questo comando attiva l'annotazione Differenza rapida o apre la vista Annotazione per la risorsa selezionata.

Mostra in Cronologia

Questo comando mostra la cronologia per la risorsa selezionata.

Modifica la proprietà ASCII/binaria...

Questo comando aprirà una finestra di dialogo contenente tutte le risorse selezionate. È quindi possibile modificare la proprietà ASCII/binaria per ogni risorsa.

Argomenti correlati
Programmazione in team con CVS
Sincronizzazione con un repository CVS  

Attività correlate
Sincronizzazione con il repository
Aggiornamento
Risoluzione dei conflitti
Unione da una sezione
Esecuzione del commit
Confronto di risorse
Unione delle modifiche nell'editor di confronto

Riferimenti correlati
CVS
Editor di confronto