Comando Difference

Confronta e, se possibile, visualizza le differenze tra due file, tra file in due cartelle o tra un'area di sospensione e un file locale o del server.

Autorizzazioni necessarie

Per utilizzare il comando difference, è necessario disporre dell'autorizzazione Lettura impostata su Consenti per tutti gli elementi specificati. Per ulteriori informazioni, vedere Autorizzazioni per Team Foundation Server.

tf diff[erence] itemspec [/version:versionspec] [/type:filetype] 
[/format:format [/ignorespace] [/ignoreeol] [/ignorecase] [/recursive] 
[/options][/noprompt][/login:username,[password]]

tf diff[erence] itemspec itemspec2 [/type:filetype] [/format: format] 
[/ignorespace] [/ignoreeol] [/ignorecase] [/recursive] [/options] [/noprompt][/login:username,[password]]

tf diff[erence] [/shelveset:shelvesetname[;shelvesetowner]] 
shelveset_itemspec [/type:filetype] 
[/format: format] [/ignorespace] [/ignoreeol] [/ignorecase] 
[/recursive] [/options] [/noprompt][/login:username,[password]]

tf diff[erence] /configure

Parametri

Argomento

Descrizione

itemspec

Obbligatoria. Indica l'elemento da confrontare. Se non viene specificata una versione o un percorso, verrà utilizzata la versione corrente dell'area di lavoro. Accetta sia percorsi locali che percorsi del server Controllo della versione di Team Foundation.

Per ulteriori informazioni sul tipo di analisi eseguito da Team Foundation sui parametri itemspecs per determinare gli elementi all'interno dell'ambito, vedere Sintassi della riga di comando (controllo della versione).

Con il comando difference non sono supportati i caratteri jolly.

Non è possibile combinare questo parametro con l'opzione /shelveset.

Itemspec2

Parametro facoltativo. Elemento con cui confrontare itemspec. Se non si specifica un secondo itemspec, verrà utilizzata la versione più recente del server Controllo della versione di Team Foundation.

Filetype

Fornisce un valore per l'opzione /type. È possibile specificare il formato "binary" o "text", nonché un numero di tabella codici o il nome descrittivo di una tabella codici.

Format

Viene utilizzato con l'opzione /format per specificare uno dei seguenti tipi di formato di output:

  • Visual

  • Brief

  • Contesto

  • RCS

  • SS

  • SS_SideBySide

  • SS_Unix

  • Unified

  • Unix

Questi formati di output sono descritti nella sezione Note di questo argomento.

Versionspec

Valore fornito dall'utente per l'opzione /version. Per ulteriori informazioni sul tipo di analisi eseguito da Team Foundation sulla specifica di una versione per determinare gli elementi all'interno dell'ambito, vedere Sintassi della riga di comando (controllo della versione).

Shelvesetowner

Identifica il proprietario dell'area di sospensione in base al nome utente. Se non viene fornito un valore per questo parametro, verrà utilizzato l'utente corrente.

Shelvesetname

Indica il nome di un'area di sospensione. È possibile creare più di un'area di sospensione con lo stesso nome nel server in cui viene eseguito Team Foundation Server, purché ciascuna area di sospensione appartenga a un utente diverso.

Shelveset_itemspec

Indica il nome di una cartella o di un file dell'area di sospensione da confrontare con la versione di base dell'area di sospensione.

username

Fornisce un valore all'opzione /login. È possibile specificare un valore username come DOMINIO\NomeUtente o NomeUtente.

Opzione

Oggetto di descrizione

/type

Esegue l'override di eventuali codifiche rilevate e utilizza la codifica specificata per la presentazione dei file al modulo di gestione delle differenze.

/version

Indica la versione del file o della cartella da confrontare. Per impostazione predefinita, in Team Foundation viene utilizzata la versione dell'area di lavoro a meno che non venga specificato un valore per versionspec.

Anziché utilizzare il flag /version, è possibile specificare le versioni aggiungendo un punto e virgola e un identificatore di versione alla fine del nome di ciascun file.

/format

Indica un formato di output specificato mediante l'argomento format.

/ignorespace

Non evidenzia le differenze dovute agli spazi vuoti tra i file confrontati.

/ignoreeol

Ignora le differenze dovute ai caratteri di nuova riga in due file o versioni di file. Il funzionamento di /ignoreeol è diverso da quello di /ignoreSpace. Con l'opzione /ignorespace otto spazi vengono considerati come un unico spazio. Se tuttavia si utilizza l'opzione /ignoreeol e il file A presenta due caratteri di nuova riga tra aree di testo invariate, mentre il file B ne presenta una sola, il risultato verrà visualizzato come differenza. Se in entrambi i file è presente un solo carattere di nuova riga, ma per indicare la nuova riga nel file A viene utilizzato il codice \r\n, mentre nel file B il codice \n, la differenza verrà ignorata con l'opzione /ignoreEOL.

/ignorecase

Non evidenzia le differenze dovute all'utilizzo di maiuscole/minuscole tra i file confrontati.

/recursive

Confronta le differenze tra la cartella corrente e tutte le relative sottocartelle.

/options

Indica una stringa di opzione per lo strumento da chiamare tramite diff. Per ulteriori informazioni, vedere Associare un tipo di file con uno strumento di rilevamento delle differenze e Associare un tipo di file a uno strumento di unione.

/shelveset

Indica un'area di sospensione da confrontare con la versione del server Controllo della versione di Team Foundation su cui si basa l'area di sospensione.

Non è possibile combinare questa opzione con un argomento itemspec. Per confrontare singoli elementi dell'area di sospensione, è possibile specificare un parametro shelveset_itemspec.

/noprompt

Disattiva la visualizzazione di tutte le finestre di dialogo che verrebbero in caso contrario visualizzate durante il completamento di questa operazione.

/configure

Richiama la finestra di dialogo Configura strumenti utente. Questo strumento è disponibile dall'interfaccia utente di Visual Studio. Per ulteriori informazioni, vedere Associare un tipo di file con uno strumento di rilevamento delle differenze.

/login

Consente di specificare il nome utente e la password necessari per autenticare l'utente con Team Foundation Server.

Note

Nota

Per eseguire questo comando, è possibile digitare tf diff o tf difference sulla riga di comando.

Utilizzare il comando difference per confrontare e, se possibile, visualizzare le differenze tra:

  • Due file distinti o due versioni dello stesso file.

  • Uno o più elementi disponibili in una cartella.

  • Uno, alcuni o tutti gli elementi disponibili in un'area di sospensione di Team Foundation Server.

Utilizzare il comando difference per confrontare file soggetti e non soggetti al controllo delle versioni.

In Team Foundation tutti i file sono suddivisi in categorie in base al tipo. È possibile unire e confrontare file di testo, affiancati e riga per riga, purché siano caratterizzati dalla stessa codifica. Se si desidera confrontare due file con codifiche diverse, è possibile mascherare temporaneamente o eseguire l'override della proprietà di codifica per un file tramite l'opzione /type. È possibile confrontare ma non unire file binari. Quando si passa uno o più file binari al comando difference, in Team Foundation vengono indicate le eventuali differenze esistenti tra i file e l'elemento con cui vengono confrontati. Per ulteriori informazioni sul modo in cui vengono distinti e considerati file di tipi diversi in Team Foundation, vedere Gestione di tipi di file.

Se si specificano due nomi di file, verrà eseguito il confronto tra i due file. Anziché utilizzare il flag /version, è possibile specificare le versioni aggiungendo un punto e virgola e un identificatore di versione alla fine del nome di ciascun file.

Se si passa un solo parametro itemspec al comando difference:

  • Se non si fornisce alcun versionspec, per impostazione predefinita la versione dell'area di lavoro corrente dell'elemento viene confrontata con quella dell'area di lavoro di base. Ad esempio, tf difference header.h confronta la versione corrente di header.h con la versione sulla quale è basato header.h.

  • Se in itemspec si include versionspec, ad esempio tf difference header.h;LBeta1, in Team Foundation questa versione verrà confrontata con quella dell'area di lavoro presente sul disco.

  • Se si specifica un intervallo di versioni, ad esempio /version:C1~C4, verranno confrontate le versioni del file all'inizio e alla fine dell'intervallo.

Per ulteriori informazioni su come accedere all'utilità della riga di comando tf, vedere Comandi dell'utilità della riga di comando Tf.

Tipi di formati di output

Il parametro format, utilizzato con l'opzione /format, consente di specificare molti formati di output diversi. I tipi di output disponibili sono:

  • Visual

    Il tipo di formato Visual consente di aprire un'applicazione esterna per la gestione delle differenze. Per impostazione predefinita, viene avviato diffmerge.exe.

  • Brief

    Il formato Brief consente di visualizzare se tra i file confrontati esistono differenze.

  • Context

    Il formato Context consente di visualizzare righe di contesto per le differenze esistenti tra i file. Questo formato deriva dal formato di output diff –c basato su UNIX.

  • RCS

    Il formato RCS è simile a /format:unix, ma non consente di visualizzare righe di contesto.

    Non sono incluse funzioni per la gestione speciale di un indicatore mancante di fine riga alla fine del file.

  • SS

    SS rappresenta il formato di output predefinito per la gestione delle differenze in Visual SourceSafe. Per ulteriori informazioni, vedere "Diff (file) (riga di commando)" sul sito Web Microsoft (https://msdn.microsoft.com/it-it/library/9a7z21t6(VS.80).aspx).

  • SS_SideBySide

    SS_SideBySide rappresenta il formato di output affiancato predefinito in Visual SourceSafe.

  • SS_Unix

    SS_Unix è simile al formato di output /format:unix, tuttavia /format:ss_unix consente di includere righe di contesto.

  • Unified

    Il formato Unified deriva dal formato di output diff –u basato su UNIX. A differenza di /format:unified, tuttavia, /format:context consente di ripetere righe di contesto identiche tra stringhe di differenze.

    Il formato Unified consente di ottenere una nuova riga di stringa di differenze unificata (@@ ... @@) solo quando la distanza con la successiva stringa di differenze è superiore al numero di righe di contesto.

  • Unix

    Questo tipo di output deriva dal formato di output del comando diff basato su UNIX.

    La costruzione del formato di output Unix è illustrata di seguito:

    <metadataline>
    "< " line prefix for lines from the first file
    "---" line
    "> " line prefix for lines from the second file
    
    <metadataline> can be one of these possibilities:
    #a#,# -- add lines from line # in file1 into file2 at lines #->#
    #,#d# -- delete lines from line # -> # in file 1 from file2 at line #
    #,#c#,# -- change lines from line # -> # in file1 into the lines in file2 at line # -> #
    
    # signs seprated by commas indicate a line range.
    # signs before the character indicate line numbers in the first file
    # signs after the character indidicate line numbers in the second file
    
    /// No end of line marker at the end of the file:
    /// \ No newline at end of file
    

Esempi

L'esempio riportato di seguito consente di visualizzare le differenze tra la versione locale e la versione dell'area di lavoro del file 314.cs. Quest'ultima corrisponde alla versione del file estratta dal server Controllo della versione di Team Foundation.

c:\projects>tf difference 314.cs

L'esempio riportato di seguito consente di visualizzare tutti i file che sono stati modificati nella cartella src. I file modificati nelle sottocartelle di src non vengono visualizzati.

c:\projects>tf difference src /format:visual

Nell'esempio riportato di seguito vengono visualizzate le differenze tra l'insieme di modifiche 3 e l'insieme di modifiche 8 del file 1254.cs.

c:\projects>tf difference /version:C3~C8 1254.cs

L'esempio riportato di seguito consente di visualizzare le differenze tra la versione del file 314.cs appartenente all'etichetta "release" e la versione appartenente all'insieme di modifiche 3200.

c:\projects>tf difference 314.cs;Lrelease 314.cs;C3200

oppure

c:\projects>tf difference 314.cs;Lrelease~C3200

L'esempio riportato di seguito consente di visualizzare la differenza tra le versioni del file e271.cs sospese da un utente denominata Nadia nell'area di sospensione PeerCodeReview8 e la versione di base dell'area di sospensione su cui tale utente ha basato le proprie modifiche. Vengono inoltre visualizzati i tipi di modifiche in sospeso sul file e271.cs nel momento in cui l'utente Nadia ha eseguito la sospensione.

c:\projects> tf difference /shelveset:PeerCodeReview8;Nadia e271.cs

L'esempio riportato di seguito consente di visualizzare le differenze tra tutti i file nell'area di sospensione PeerCodeReview2 e la versione di base dell'area di sospensione di tali file.

c:\projects> tf difference /shelveset:PeerCodeReview2

Vedere anche

Riferimenti

Comando Merge

Comando Checkin

Comando Shelvesets

Concetti

Gestione di tipi di file

Altre risorse

Comandi dell'utilità della riga di comando Tf

Confronto di cartelle e file