Příkaz Rozdíl

Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019

Visual Studio 2019 | Visual Studio 2022

Příkaz Správa verzí Team Foundation (TFVC) difference porovnává a pokud je to možné, rozdíly mezi dvěma soubory, soubory ve dvou složkách nebo sada odložených změn a místní nebo serverový soubor.

Požadavky

Pokud chcete příkaz použít difference , musíte mít oprávnění ke čtení pro všechny zadané položky nastavené na Povolit. Další informace naleznete v tématu Výchozí oprávnění TFVC.

Syntaxe

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

Parametry

Argumenty

Argument

Popis

<itemspec>

Požadováno. Určuje položku, která se má porovnat. Pokud není zadána žádná verze nebo cesta, předpokládá se aktuální verze pracovního prostoru. Přijímá místní i cesty k serveru Azure DevOps.

Další informace o tom, jak TFVC analyzuje itemspec položky v rámci oboru, naleznete v tématu Použití příkazů správy verzí Team Foundation.

Příkaz difference nepodporuje zástupné znaky.

Tento parametr nelze kombinovat s /shelveset možností.

<itemspec2>

Nepovinné. Položka, ke které itemspec se má porovnat. Pokud nezadáte sekundu itemspec, použije se nejnovější verze serveru Azure DevOps položky.

<filetype>

Poskytuje hodnotu pro možnost /type . Můžete zadat binary nebo text a číslo znakové stránky nebo popisný název znakové stránky.

<format>

Používá se s /format možností zadat výstupní formát jednoho z následujících typů:

  • Visual
  • Brief
  • Context
  • RCS
  • SS
  • SS_SideBySide
  • SS_Unix
  • Unified
  • Unix

Tyto výstupní formáty jsou vysvětleny v části Poznámky .

<versionspec>

Hodnota zadaná uživatelem pro možnost /version . Další informace o tom, jak TFVC parsuje specifikaci verze k určení položek v rámci oboru, naleznete v tématu Použití příkazů správy verzí Team Foundation.

<shelvesetowner>

Identifikuje vlastníka sady odložených polí podle uživatelského jména. Pokud není zadaná hodnota tohoto parametru, předpokládá se aktuální uživatel.

<shelvesetname>

Určuje název sady odložených odložených polí. Na serveru, na kterém běží TFVC, můžete vytvořit více než jednu sadu odložených odložených polí, pokud každý z nich vlastní jiný uživatel.

<shelveset_itemspec>

Určuje název složky nebo souboru v sadě odložených složek, které se mají porovnat s verzí sady odložených odložených polí.

<username>

Poskytuje hodnotu možnosti /login . Hodnotu uživatelského jména můžete zadat buď nebo DOMAIN\usernameusername.

Možnosti

Možnost

Popis

/type

Přepíše všechna zjištěná kódování a použije zadané kódování k prezentaci souborů rozdílového modulu.

/version

Určuje verzi souboru nebo složky, která se má porovnat. TfVC ve výchozím nastavení používá verzi pracovního prostoru, pokud nezadáte versionspec.

Místo použití příznaku /version můžete zadat verze připojením středníku a specifikátoru verze na konec každého názvu souboru.

/format

Určuje výstupní formát určený argumentem format .

/ignorespace

Nezvýrazňuje mezery mezi porovnávané soubory.

/ignoreeol

Ignoruje rozdíly mezi znaky nového řádku ve dvou souborech nebo verzích souborů. /ignoreeol funguje odlišně od ignorespace, což zachází s osmi mezerami stejně jako s jedním. Pokud však použijete /ignoreeol možnost a soubor A má dva nové znaky řádku mezi nezměněnými oblastmi textu a soubor B má jeden, výsledek se zobrazí jako rozdíl. Pokud mají oba soubory jenom jeden nový řádek, ale Soubor A se používá jako nový řádek a File B používá \n\r\n , /ignoreeol možnost by tuto možnost ignorovala jako rozdíl.

/ignorecase

Nezvýrazňuje rozdíly v písmenech mezi porovnávané soubory.

/recursive

Porovná rozdíly mezi aktuální složkou a všemi jejími podsložkami.

/options

Určuje řetězec možnosti pro nástroj, který má být vyvolán difference. Další informace naleznete v tématu Přidružení typu souboru k nástroji rozdíl a Přidružení typu souboru k nástroji pro sloučení.

/shelveset

Určuje sadu odložených odložených dat, která se má porovnat s verzí serveru Azure DevOps, na které je sada odložených odložených.

Tuto možnost nelze kombinovat s argumentem itemspec . Chcete-li porovnat jednotlivé položky sady odložených položek, můžete zadat shelveset_itemspec.

/noprompt

Potlačí všechna dialogová okna, která by se jinak zobrazovala během dokončení této operace.

/configure

Vyvolá dialogové okno Konfigurovat uživatelské nástroje z uživatelského rozhraní sady Visual Studio. Další informace naleznete v tématu Přidružení typu souboru k nástroji rozdílu.

/login

Určuje uživatelské jméno a heslo pro ověření uživatele pomocí TFVC.

Poznámky

Poznámka:

Tento příkaz můžete tf diff spustit zadáním nebo tf difference na příkazovém řádku.

Příkaz můžete použít difference k porovnání a v případě možných rozdílů mezi zobrazením:

  • Dva různé soubory nebo dvě verze stejného souboru.

  • Jedna nebo více položek ve složce

  • Jedna, některá nebo všechny položky v sadě odložených položek na serveru Azure DevOps.

Příkaz můžete použít difference k porovnání verzí i souborů, které nejsou verze.

TFVC kategorizuje všechny soubory podle typu. Textové soubory lze sloučit a porovnávat vedle sebe i řádek po řádci, pokud oba soubory mají stejné kódování. Pokud chcete porovnat dva soubory, jejichž kódování není stejné, můžete dočasně maskovat nebo přepsat vlastnost kódování souboru pomocí /type možnosti.

Binární soubory je možné porovnat, ale nelze je sloučit. Když příkazu předáte jeden nebo více binárních souborů difference , TFVC určuje, jestli mezi ním existují rozdíly a položku, se kterou se porovnává. Další informace o tom, jak TFVC rozlišuje a zpracovává soubory různých typů, naleznete v tématu Správa typů souborů.

Pokud zadáte dva názvy souborů, porovnají se dva soubory. Místo použití příznaku /version můžete zadat verze připojením středníku a specifikátoru verze na konec každého názvu souboru.

Pokud předáte pouze jeden itemspec příkaz rozdílu:

  • Pokud nezadáte versionspecpoložku, vaše aktuální verze pracovního prostoru se ve výchozím nastavení porovná se základní verzí pracovního prostoru. Porovná například aktuální verzi header.h s verzí, na které je založená hlavička.h. tf difference header.h

  • Pokud zahrnete do versionspec souboru itemspecTFVC ( například tf difference header.h;LBeta1, TFVC porovná tuto verzi s vaší aktuální verzí pracovního prostoru na disku.

  • Pokud zadáte rozsah verzí, například /version:C1~C4, porovná se verze souboru na dvou koncových bodech rozsahu.

Další informace o tom, jak používat nástroj příkazového tf řádku, naleznete v tématu Použití příkazů správy verzí Team Foundation.

Typy výstupních formátů

Parametr format použitý s /format možností určuje mnoho různých výstupních formátů. K dispozici jsou následující typy výstupu:

  • Visual Typ formátu otevře aplikaci externího rozdílu. Ve výchozím nastavení se spustí diffmerge.exe .

  • Brief Formát vytiskne, zda se porovnávané soubory liší.

  • Context formát poskytuje řádky kontextu pro rozdíly v souborech. Tento formát je odvozen z výstupního formátu založeného na diff -c systém UNIX.

  • RCS formát je podobný formátu /format:unix, s výjimkou kontextových řádků nejsou zadány. Není k dispozici žádné speciální předání chybějícího konce značky řádku na konci souboru.

  • SSje výchozí výstupní formát výstupu pro Visual Source Sejf. Další informace najdete v tématu Diff (příkazový řádek).

  • SS_SideBySideje výchozí formát výstupu vedle sebe pro Visual Source Sejf.

  • SS_Unix je podobný výstupnímu /format:unix formátu, ale /format:ss_unix obsahuje kontextové řádky a /format:unix ne.

  • Unifiedformát je odvozen z výstupního formátu založeného na diff -u systém UNIX. /format:context opakuje stejné kontextové čáry mezi řetězci rozdílů, ale /format:unified ne.

    Unified Formát vytvoří nový řádek s jednotným rozdílem (@@ ... @@) pouze v případě, že vzdálenost k dalšímu řetězci rozdílu je větší než počet kontextových řádků.

  • UnixVýstupní typ výstupu je odvozen z výstupního formátu příkazu založeného na diff systém UNIX.

    Výstupní Unix formát je vytvořen následujícím způsobem:

    <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 separated by commas indicate a line range.
    # signs before the character indicate line numbers in the first file.
    # signs after the character indicate line numbers in the second file.
    
    /// No end of line marker at the end of the file:
    /// \ No newline at end of file
    

Příklady

Následující příklad zobrazuje rozdíly mezi místní verzí 314.cs a verzí pracovního prostoru 314.cs, která je verzí souboru rezervovaného ze serveru Azure DevOps.

c:\projects>tf difference 314.cs

Následující příklad zobrazí všechny soubory, které byly změněny ve složce src, ale nezobrazuje soubory, které byly změněny v podsložkách src.

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

Následující příklad zobrazuje rozdíly mezi sadou změn 3 a sadou změn 8 z 1254.cs.

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

Následující příklady zobrazují rozdíly mezi verzí 314.cs , která patří k popisku release , a verzí, která patří do sady změn 3200.

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

nebo

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

Následující příklad zobrazuje rozdíl mezi verzemi e271.cs , že uživatel s názvem Pat shelved in shelveset PeerCodeReview8 a základní verze sady odložených odložených změn na základě jejich změn. Výstup také zobrazuje typy čekajících změn, vůči e271.cs které uživatel přeloží.

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

Následující příklad zobrazuje rozdíly mezi všemi soubory v PeerCodeReview2 sadě odložených změn a základní verzí sady odložených odložených souborů.

c:\projects> tf difference /shelveset:PeerCodeReview2