Opdracht Verschil
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Visual Studio 2019 | Visual Studio 2022
De opdracht Team Foundation Version Control (TFVC) difference
vergelijkt, en indien mogelijk worden er verschillen tussen twee bestanden, bestanden in twee mappen of een plankenset en een lokaal of een serverbestand weergegeven.
Vereisten
Als u de difference
opdracht wilt gebruiken, moet u de machtiging Lezen hebben voor alle opgegeven items die zijn ingesteld op Toestaan. Zie Standaard TFVC-machtigingen voor meer informatie.
Syntaxis
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
Parameters
Argumenten
Argument
Beschrijving
<itemspec>
Vereist. Hiermee geeft u het te vergelijken item. Als er geen versie of pad is opgegeven, wordt uitgegaan van de huidige werkruimteversie. Accepteert zowel lokale als Azure DevOps-serverpaden.
Zie Team Foundation-opdrachten voor versiebeheer gebruiken voor meer informatie over hoe TFVC het itemspec
parseert om te bepalen welke items binnen het bereik vallen.
De difference
opdracht biedt geen ondersteuning voor jokertekens.
Deze parameter kan niet worden gecombineerd met de /shelveset
optie.
<itemspec2>
Optioneel. Het item waarop het itemspec
moet worden vergeleken. Als u geen seconde itemspec
opgeeft, wordt de meest recente Versie van de Azure DevOps-server van het item gebruikt.
<filetype>
Biedt een waarde voor de /type
optie. U kunt een codepaginanummer of text
de beschrijvende naam voor een codepagina opgevenbinary
.
<format>
Wordt gebruikt met de /format
optie om een uitvoerindeling van een van de volgende typen op te geven:
Visual
Brief
Context
RCS
SS
SS_SideBySide
SS_Unix
Unified
Unix
Deze uitvoerindelingen worden uitgelegd in de sectie Opmerkingen .
<versionspec>
De door de gebruiker opgegeven waarde voor de /version
optie. Zie Team Foundation-versiebeheeropdrachten gebruiken voor meer informatie over hoe TFVC een versiespecificatie parseert om te bepalen welke items binnen het bereik vallen.
<shelvesetowner>
Identificeert de eigenaar van de plankenset op gebruikersnaam. Als er geen waarde voor deze parameter wordt opgegeven, wordt ervan uitgegaan dat de huidige gebruiker.
<shelvesetname>
Hiermee geeft u de naam van een plankenset. U kunt meer dan één plankenset maken met dezelfde naam op de server waarop TFVC wordt uitgevoerd, zolang een andere gebruiker eigenaar is van elke plankenset.
<shelveset_itemspec>
Hiermee geeft u de naam van een map of bestand in de plankenset om te vergelijken met de basis plankensetversie.
<username>
Biedt een waarde voor de /login
optie. U kunt een gebruikersnaamwaarde opgeven als of DOMAIN\username
username
.
Opties
Optie
Beschrijving
/type
Hiermee overschrijft u alle gedetecteerde coderingen en gebruikt u de opgegeven codering om de bestanden aan de differentiërende engine te presenteren.
/version
Hiermee geeft u de versie van het bestand of de map te vergelijken. TFVC gebruikt standaard de werkruimteversie als u geen versionspec
.
In plaats van de /version
vlag te gebruiken, kunt u versies opgeven door een puntkomma en versieaanduiding toe te voegen aan het einde van elke bestandsnaam.
/format
Hiermee geeft u een uitvoerindeling op die is opgegeven door het format
argument.
/ignorespace
Markeert geen witruimteverschillen tussen de vergeleken bestanden.
/ignoreeol
Negeert verschillen tussen de nieuwe regeltekens in twee bestanden of bestandsversies. /ignoreeol
werkt anders dan ignorespace
, waarbij acht spaties identiek aan één worden behandeld. Als u echter de /ignoreeol
optie gebruikt en Bestand A twee nieuwe regeltekens bevat tussen ongewijzigde tekstgebieden en Bestand B er een heeft, wordt het resultaat weergegeven als een verschil. Als beide bestanden slechts één nieuwe regel hebben, maar Bestand A als een nieuwe regel gebruikt \r\n
en bestand B gebruikt \n
, wordt dit /ignoreeol
genegeerd als een verschil.
/ignorecase
Markeert geen verschillen in letterbehuizing tussen de vergeleken bestanden.
/recursive
Vergelijkt de verschillen tussen de huidige map en alle bijbehorende submappen.
/options
Hiermee geeft u een optietekenreeks op waarmee het hulpprogramma moet worden aangeroepen difference
. Zie Een bestandstype koppelen aan een verschilhulpmiddel en een bestandstype koppelen aan een samenvoegprogramma voor meer informatie.
/shelveset
Hiermee geeft u een plankenset op die moet worden vergeleken met de Azure DevOps-serverversie waarop de plankenset is gebaseerd.
Deze optie kan niet worden gecombineerd met een itemspec
argument. Als u afzonderlijke plankensetitems wilt vergelijken, kunt u een shelveset_itemspec
.
/noprompt
Onderdrukt dialoogvensters die anders zouden worden weergegeven tijdens het voltooien van deze bewerking.
/configure
Hiermee wordt het dialoogvenster Gebruikershulpprogramma's configureren vanuit de Visual Studio-gebruikersinterface aangeroepen. Zie Een bestandstype koppelen aan een verschilhulpmiddel voor meer informatie.
/login
Hiermee geeft u de gebruikersnaam en het wachtwoord op om de gebruiker te verifiëren met TFVC.
Opmerkingen
Notitie
U kunt deze opdracht typen tf diff
of tf difference
op de opdrachtregel uitvoeren.
U kunt de difference
opdracht gebruiken om verschillen te vergelijken en indien mogelijk weer te geven tussen:
Twee verschillende bestanden of twee versies van hetzelfde bestand.
Een of meer items in een map.
Een, sommige of alle items in een plankenset op de Azure DevOps-server.
U kunt de difference
opdracht gebruiken om zowel versie- als niet-versiebestanden te vergelijken.
TFVC categoriseert alle bestanden per type. Tekstbestanden kunnen worden samengevoegd en vergeleken, naast elkaar en per regel, zolang beide bestanden dezelfde codering hebben. Als u twee bestanden wilt vergelijken waarvan de coderingen niet hetzelfde zijn, kunt u de coderingseigenschap voor een bestand tijdelijk maskeren of overschrijven met behulp van de /type
optie.
Binaire bestanden kunnen worden vergeleken, maar kunnen niet worden samengevoegd. Wanneer u een of meer binaire bestanden doorgeeft aan de difference
opdracht, geeft TFVC aan of er verschillen bestaan tussen het en het item waarop het wordt vergeleken. Zie Bestandstypen beheren voor meer informatie over hoe TFVC onderscheid maakt tussen en behandelt bestanden van verschillende typen.
Als u twee bestandsnamen opgeeft, worden de twee bestanden vergeleken. In plaats van de vlag /version te gebruiken, kunt u versies opgeven door een puntkomma en versieaanduiding toe te voegen aan het einde van elke bestandsnaam.
Als u slechts één itemspec
aan de verschilopdracht doorgeeft:
Als u geen versie van de
versionspec
werkruimte opgeeft, wordt uw huidige werkruimteversie van het item standaard vergeleken met de basiswerkruimteversie. Vergelijkt bijvoorbeeldtf difference header.h
de huidige versie van header.h met de versie waarop header.h is gebaseerd.Als u een
versionspec
in uwitemspec
, zoalstf difference header.h;LBeta1
TFVC, opneemt, vergelijkt die versie met uw huidige werkruimteversie op schijf.Als u een reeks versies opgeeft, zoals
/version:C1~C4
, worden de versies van het bestand op de twee eindpunten van het bereik vergeleken.
Zie Team Foundation-versiebeheeropdrachten gebruiken voor meer informatie over het gebruik van het tf
opdrachtregelprogramma.
Typen uitvoerindelingen
De format
parameter, die wordt gebruikt met de /format
optie, geeft veel verschillende uitvoerindelingen op. De volgende uitvoertypen zijn beschikbaar:
Visual
het indelingstype opent een toepassing voor extern verschil. Standaard wordt diffmerge.exe gestart.Brief
-indeling wordt afgedrukt of de bestanden die worden vergeleken verschillen.Context
-indeling biedt lijnen met context voor de verschillen in de bestanden. Deze indeling is afgeleid van de uitvoerindeling op basis vandiff -c
UNIX.RCS
indeling is vergelijkbaar met/format:unix
, behalve dat er geen contextlijnen worden opgegeven. Er is geen speciale handing voor een ontbrekend einde van de lijnmarkering aan het einde van het bestand opgegeven.SS
is de standaardverschiluitvoerindeling voor Visual SourceSafe. Zie Diff (opdrachtregel) voor meer informatie.SS_SideBySide
is de standaarduitvoerindeling naast elkaar voor Visual SourceSafe.SS_Unix
is vergelijkbaar met de/format:unix
uitvoerindeling, maar/format:ss_unix
bevat contextlijnen en/format:unix
niet.Unified
de indeling is afgeleid van de uitvoerindeling op basis vandiff -u
UNIX./format:context
herhaalt identieke contextlijnen tussen de verschiltekenreeksen, maar/format:unified
niet.Unified
-indeling produceert alleen een nieuwe uniforme tekenreeks (@@ ... @@
) als de afstand tot de volgende verschiltekenreeks groter is dan het aantal contextlijnen.Unix
uitvoertype is afgeleid van de uitvoerindeling van unix-opdrachtendiff
.De
Unix
uitvoerindeling wordt op de volgende manier samengesteld:<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
Voorbeelden
In het volgende voorbeeld ziet u de verschillen tussen de lokale versie van 314.cs en de werkruimteversie van 314.cs die de versie is van het bestand dat is uitgecheckt vanaf de Azure DevOps-server.
c:\projects>tf difference 314.cs
In het volgende voorbeeld worden alle bestanden weergegeven die zijn gewijzigd in de src-map , maar worden geen bestanden weergegeven die zijn gewijzigd in submappen van src.
c:\projects>tf difference src /format:visual
In het volgende voorbeeld ziet u de verschillen tussen wijzigingenset 3 en wijzigingenset 8 van 1254.cs.
c:\projects>tf difference /version:C3~C8 1254.cs
In de volgende voorbeelden worden de verschillen weergegeven tussen de versie van 314.cs die deel uitmaken van het label release
en de versie die deel uitmaakt van de wijzigingenset 3200.
c:\projects>tf difference 314.cs;Lrelease 314.cs;C3200
– of –
c:\projects>tf difference 314.cs;Lrelease~C3200
In het volgende voorbeeld ziet u het verschil tussen de versies van e271.cs dat een gebruiker met de naam Pat in plankenset PeerCodeReview8
en de basis plankensetversie waarop ze hun wijzigingen hebben gebaseerd. In de uitvoer ziet u ook de typen wijzigingen die in behandeling zijn wanneer e271.cs
de gebruiker op de plank staat.
c:\projects> tf difference /shelveset:PeerCodeReview8;Pat e271.cs
In het volgende voorbeeld ziet u de verschillen tussen alle bestanden in de PeerCodeReview2
plankenset en de basis-plankensetversie van die bestanden.
c:\projects> tf difference /shelveset:PeerCodeReview2