Esporta (0) Stampa
Espandi tutto
Il presente articolo è stato tradotto manualmente. Passare il puntatore sulle frasi nell'articolo per visualizzare il testo originale. Ulteriori informazioni.
Traduzione
Originale

Utilizzare il controllo della versione

Indipendentemente dalla dimensione del progetto software, è generalmente consigliabile impiegare il prima possibile il controllo della versione nel ciclo di vita del progetto.

Quando si crea un progetto di codice (tastiera: CTRL + 0, N), è disponibile l'opzione per aggiungerlo al controllo della versione.

Nuovo progetto

È necessario selezionare la casella? La risposta breve è sì. La risposta più dettagliata dipende dalla situazione.

ms181368.collapse_all(it-it,VS.120).gifProgetti piccoli

Anche se si lavora da soli su un progetto piccolo, è possibile utilizzare il controllo della versione per migliorare la produttività personale e risolvere problemi difficili.

Si desidera solo iniziare subito a codificare. Non si è sicuri se utilizzare la condivisione ora, ma si potrebbe decidere di utilizzarla in futuro.

È possibile iniziare a utilizzare il controllo della versione Git prima di scrivere la prima riga di codice senza incorrere praticamente in alcun costo o rischio. Si ottengono molti vantaggi tra cui quello di poter tornare a uno stato integro noto nel caso si presentassero problemi. Questa operazione viene eseguita nel computer di sviluppo locale senza la necessità di un server. Una volta pronti, si potrà condividere rapidamente il codice e avviare la collaborazione in TFS o un servizio Git di terze parti. Informazioni introduttive sull'utilizzo di Git.

Si è alla ricerca di un sistema semplice che consenta all'utente di collaborare facilmente con altri all'istante.

In un tempo non molto più lungo, è possibile creare un progetto team e iniziare a utilizzare il controllo della versione di Team Foundation (TFVC). È possibile utilizzare Visual Studio Online o un'istanza locale di Team Foundation Server (TFS). Informazioni introduttive sull'utilizzo del controllo della versione di Team Foundation (TFVC).

ms181368.collapse_all(it-it,VS.120).gifProgetti più grandi

Se si collabora con un team o in progetti complessi, quasi certamente si utilizza un file system condiviso e incluso nel controllo della versione in modo che sia possibile migliorare la collaborazione e la trasparenza. È inoltre possibile utilizzare le compilazioni automatizzate, le operazioni di pianificazione e rilevamento del progetto e altre funzionalità di Application Lifecycle Management, se si utilizza TFS localmente o nel cloud.

Quando si crea un nuovo progetto team si sceglie il sistema di controllo della versione che il team utilizzerà in tale progetto (Controllo della versione di Team Foundation (TFVC) o Git). Questa è una scelta permanente per ogni progetto team creato, ma si possono utilizzare progetti team TFVC e Git nella stessa raccolta di progetti team.

Connessione al progetto team TFVC

ms181368.collapse_all(it-it,VS.120).gifControllo della versione di Team Foundation (centralizzato)

Controllo della versione di Team Foundation (TFVC) è un sistema di controllo della versione centralizzato. In genere, i membri del team hanno solo una versione di ogni file nel computer dello sviluppatore. I dati cronologici vengono gestiti solo sul server. I branch sono basati sul percorso e creati nel server.

TFVC consente a due modelli del team di apportare le modifiche seguenti:

  • Aree di lavoro server: Prima di apportare modifiche, i membri del team verificano pubblicamente i file. La maggior parte delle operazioni richiede che gli sviluppatori siano connessi al server. In passato è successo che i team abbiano bloccato l'estrazione per alcune persone, ma attualmente è un'eventualità meno comune. Questo sistema consente di bloccare i flussi di lavoro. Altri sistemi in cui è impiegata questa modalità di funzionamento sono Visual Source Safe, Perforce e CVS.

  • Aree di lavoro locali: Ogni membro del team esegue una copia della versione più recente della codebase con essi e funziona offline in base alle necessità. Gli sviluppatori archiviano le modifiche e risolvono i conflitti in base alle esigenze. Un altro sistema che funziona in questo modo è Subversion.

Ulteriori informazioni sul controllo della versione di Team Foundation (TFVC).

ms181368.collapse_all(it-it,VS.120).gifControllo della versione Git distribuito (decentralizzato)

Git è un sistema di controllo della versione decentralizzato. Ogni sviluppatore ha una copia dell'intero repository di origine nel computer di sviluppo. Gli sviluppatori possono eseguire il commit di ogni set di modifiche nel computer dello sviluppatore e di eseguire operazioni di controllo della versione ad esempio cronologia e confrontare senza una connessione di rete. I branch sono semplici. Quando è necessario passare i contesti, è possibile creare un ramo locale privato. È possibile passare rapidamente da un branch a un altro per orientarsi tra le diverse varianti della codebase. Successivamente, è possibile eseguire il merge, la pubblicazione o l'eliminazione del branch. Un altro sistema che funziona in questo modo è Mercurial.

Nota importante Importante

Git in Visual Studio e in TFS è Git standard. È possibile utilizzare Visual Studio con i servizi Git di terze parti ed è inoltre possibile utilizzare i client Git di terze parti con TFS.

Ulteriori informazioni su Git.

Di seguito è riportato un grafico di confronto che facilita la scelta tra TFVC e Git.

Funzionalità

TFVC

Git

Avvisi

I membri del team possono ricevere avvisi di posta elettronica quando vengono eseguite le archiviazioni.

I membri del team possono ricevere avvisi di posta elettronica quando viene eseguito il push dei commit nel server.

Controllo

Poiché il team archivia tutto il lavoro in un sistema centralizzato, è possibile individuare l'utente che ha eseguito l'archiviazione in un insieme di modifiche e utilizzare il confronto per vedere ciò che è cambiato. Quando si esamina un file, è possibile annotarlo per identificare l'autore e la data di una modifica di un blocco di codice.

È possibile identificare l'utente che ha eseguito il push di un commit in TFS. Chiunque può richiedere un'identità come autore o committer. È possibile identificare quando le modifiche sono state apportate e cosa è cambiato mediante la cronologia, il confronto e l'annotazione.

Creazione di un ramo

I branch basati sul percorso vengono utilizzati principalmente come costrutti di lunga durata per ridurre il rischio di modifica tra team e versioni della funzionalità. I membri del team in genere configurano un'area di lavoro aggiuntiva per ogni branch che utilizzano.

Le modifiche in ogni branch sono indipendenti l'una dall'altra e non è pertanto necessario archiviarle prima di passare da un branch a un altro. Il merge tra i branch mediante l'unione tra branch di pari livello richiede un merge baseless.

È possibile ottenere le visualizzazioni delle strutture di branch e il percorso in cui gli insiemi di modifiche sono stati sottoposti al merge.

Vedere Utilizzare i branch per isolare il rischio nel controllo della versione di Team Foundation.

Il branching è semplice e indipendente dal percorso. Molti sviluppatori creano un branch per ogni nuova funzionalità che codificano, talvolta giornalmente. È possibile passare rapidamente da un branch a un altro per orientarsi tra le diverse varianti della codebase. È possibile creare branch che esistono unicamente nel computer di sviluppo che vengono condivisi quando si è pronti.

È necessario eseguire il commit, creare un branch, mettere da parte oppure annullare le modifiche prima di passare da un branch all'altro. Il merge è semplice e indipendente dal commit su cui si basa il branch.

È possibile confrontare i branch per verificare quali commit sono presenti sui branch.

Vedere Utilizzare i branch Git per cambiare contesto, sospendere il lavoro e isolare un rischio.

Compilazioni (automatizzate da TFBuild)

È possibile utilizzare tutte le funzionalità di TFBuild per compilare qualsiasi combinazione di contenuto all'interno della raccolta di progetti team.

È possibile utilizzare la maggior parte delle funzionalità di TFBuild per compilare un progetto team per volta e uno o più repository per volta. Le compilazioni con archiviazione gestita non sono ancora disponibili. I simboli possono essere pubblicati, ma non vengono ancora indicizzati.

Modifiche

I membri del team possono modificare contemporaneamente i file nel computer di sviluppo. Gli insiemi di modifiche vengono caricati (archiviati) nel server quando vengono creati. È possibile caricare le modifiche in qualsiasi momento. Tuttavia, è possibile che si verifichino conflitti che interrompono l'operazione di caricamento.

È possibile modificare il commento di un insieme di modifiche dopo la creazione. È possibile collegare gli insiemi di modifiche agli elementi di lavoro e associarli alle compilazioni completate.

I membri del team possono modificare contemporaneamente i file nel computer di sviluppo. I commit vengono creati nel computer di sviluppo indipendentemente dalla loro partecipazione al team. Quando si è pronti è necessario eseguire il pull degli ultimi commit prima di caricare (push) quelli dell'utente nel server. Quando si esegue il pull, è possibile che si verifichino conflitti che interrompono l'operazione.

È possibile emendi l'ultimo commit locale. Non è possibile modificare il commit precedenti. È possibile collegare i commit agli elementi di lavoro e associarli alle compilazioni completate.

È possibile modificare e l'unione di commit locali da prompt dei comandi.

Revisioni del codice in TFS

Yes

Non è ancora disponibile, ma è possibile commentare e inviare un messaggio di posta elettronica sul commit dal portale Web.

Supporto CodePlex

Yes

Yes

Risoluzione dei conflitti

È possibile che si renda necessario risolvere i conflitti quando si legge, si archivia, si esegue il merge o l'unshelving. È possibile risolvere tutti i tipi di conflitti in Visual Studio.

È possibile che si renda necessario risolvere i conflitti quando si esegue il pull o il merge. È possibile risolvere i conflitti di contenuto in Visual Studio. Altri tipi di conflitti possono essere risolti dal prompt dei comandi.

Archiviazione dei file

È possibile archiviare file binari di grandi dimensioni. È inoltre possibile utilizzare NuGet in combinazione o come alternativa.

È possibile archiviare file binari di piccole dimensioni. Evitare l'archiviazione di file binari di grandi dimensioni, specialmente quelli che si modificano spesso. Se possibile, utilizzare NuGet in alternativa al controllo in file binari.

File nel computer di sviluppo client

È possibile esplorare i file utilizzando Esplora controllo codice sorgente di Visual Studio, Esplora risorse di Windows oppure il prompt dei comandi.

È possibile esplorare i file utilizzando Esplora risorse di Windows o il prompt dei comandi. Non è possibile esplorare i file in Visual Studio.

File nel server

Ogni progetto team contiene tutti i file in un unico percorso radice (ad esempio, $/FabrikamTFVC). È possibile applicare le autorizzazioni a livello di file. È possibile bloccare i file.

È possibile esplorare i file nel portale Web e utilizzando Esplora controllo codice sorgente di Visual Studio.

Il progetto team presente in un solo server.

Ogni progetto team può contenere uno o più repository di Git e ogni repository di Git può contenere uno o più branch. Le autorizzazioni più granulari che si possono applicare sono quelle per un repository o un branch. I file non possono essere bloccati.

È possibile esplorare i file nel portale Web.

È possibile richiedere i commit nel repository più remote ad esempio sia al repository del progetto team che al sito Web incluso in un Windows Azure.

Cronologia

La cronologia dei file non viene replicata nel computer di sviluppo client e pertanto può essere visualizzata solo quando si è connessi al server.

È possibile visualizzare la cronologia in Visual Studio e nel portale Web. È possibile annotare i file per conoscere l'autore e la data di una modifica a una riga.

La cronologia dei file viene replicata nel computer di sviluppo client e può essere visualizzata anche quando non si è connessi al server.

È possibile visualizzare la cronologia in Visual Studio e nel portale Web. Nel portale Web è possibile annotare i file per conoscere l'autore e la data di una modifica a una riga.

Gestione del lavoro nel computer di sviluppo

Pagine Modifiche in sospeso e Lavoro

Pagine Modifiche, Commit e Branch.

Percorso di migrazione

Git-TF

Git-TF

Controlli di qualità

Si possono utilizzare le compilazioni CI, compilazioni con archiviazione gestita e i criteri di archiviazione.

Si possono utilizzare le compilazioni CI. Le compilazioni con archiviazione gestita non sono ancora disponibili.

Ripristinare le modifiche

È possibile ripristinare uno o più insiemi di modifiche

È possibile restituisce il commit

Scala

È possibile utilizzare progetti con scala molto grande oppure piccola utilizzando aree di lavoro locali. Supporta la scala massiva (milioni di file per branch e file binari di grandi dimensioni) utilizzando le aree di lavoro del server.

È possibile iniziare piccoli progetti con rapidità. È possibile scalare fino ai progetti molto grandi, ma è necessario pianificare in anticipo la modularizzazione della codebase. È possibile creare più repository in un progetto team.

Sospensione del lavoro

È possibile sospendere dalla pagina Lavoro o eseguire lo shelving delle modifiche.

È possibile creare un ramo da (da Visual Studio o dal prompt dei comandi) o mettere in serboe (da prompt dei comandi)

Contrassegno dei file

È possibile applicare etichette a una versione di uno o più file da Visual Studio o dal prompt dei comandi. Per ciascun file l'etichetta può essere applicata a una versione diversa.

È possibile applicare i tag dal prompt dei comandi ai singoli commit. Visualizzazione dei tag nella finestra della cronologia di Visual Studio.

Strumenti

Strumenti client: in Visual Studio, Eclipse con Team Explorer Everywhere

Strumento server: TFS

Strumenti client: in Visual Studio, Eclipse e altri strumenti di terze parti

Strumenti server: TFS e servizi di terze parti

Interfaccia utente

Visual Studio: offre tutte le funzionalità più comuni e molte funzionalità avanzate.

Portale Web TFS: è possibile esplorare, commentare, annotare e visualizzare la cronologia della codebase.

Prompt dei comandi TF: installato con Visual Studio. Utilizzato per attività avanzate, amministrative e altre attività meno comuni.

Visual Studio: offre numerose funzionalità comuni. Le funzionalità per alcune attività comuni non sono ancora disponibili.

Portale Web TFS: è possibile esplorare, commentare, annotare e visualizzare la cronologia della codebase.

Prompt dei comandi di terze parti: è possibile installarlo da Visual Studio. Utilizzato per alcune attività comuni e molte attività meno comuni.

Compatibilità di Visual Studio

È possibile utilizzare qualsiasi versione precedente di Visual Studio supportata.

È possibile utilizzare Visual Studio 2013 (Git è incluso) o Visual Studio 2012 Update 3 (è necessario installare anche Strumenti di Visual Studio per Git).

Portale Web

È possibile esplorare la codebase (branch inclusi), visualizzare la cronologia, annotare e commentare gli insiemi di modifiche e gli shelveset nonché eseguire altre attività come il download ad hoc di parti selezionate della codebase come file con estensione zip.

È possibile esplorare la codebase, visualizzare la cronologia, confrontare i branch, annotare e commentare i commit nonché eseguire altre attività come il download ad hoc di parti selezionate della codebase come file con estensione zip.

Aggiunte alla community

AGGIUNGI
Mostra:
© 2014 Microsoft