Share via


Opdrachten voor Team Foundation-versiebeheer gebruiken

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Visual Studio 2019 | Visual Studio 2022

U kunt versiebeheeropdrachten gebruiken om bijna alle TFVC-taken (Team Foundation Version Control) uit te voeren die u in Visual Studio kunt uitvoeren. U kunt ook versiebeheeropdrachten gebruiken om verschillende taken uit te voeren die niet kunnen worden uitgevoerd in Visual Studio. Als u versiebeheeropdrachten wilt uitvoeren vanaf een opdrachtprompt of in een script, gebruikt u het tf.exe hulpprogramma.

Een opdracht uitvoeren

Als u de Visual Studio-opdrachtprompt wilt starten, selecteert u in Windows Start de opdrachtprompt voor ontwikkelaars voor VS2022 of eerdere versiesnelkoppeling.

Notitie

Voor Visual Studio 2019 en latere versies bevindt het tf.exe binaire bestand zich niet meer op een vaste locatie in het installatiepad van Visual Studio, zoals in sommige eerdere versies, C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDEbijvoorbeeld. Als uw script gebruikmaakt tf.exe, moet u geen pad naar het bestand codeeren op basis van het installatiepad van Visual Studio.

In de meeste gevallen voert u de opdracht versiebeheer uit in de context van een map die is toegewezen in de werkruimte. Is bijvoorbeeld $/SiteApp/Main/ toegewezen aan c:\\code\\SiteApp\\Main\\. Gebruik de volgende opdracht om de nieuwste versie van alle items in de werkruimte op te halen:

c:\code\SiteApp\Main\SolutionA>tf get

Uw ontwikkelcomputer instellen en werkruimten beheren

Uw werkruimte is een lokale kopie van de codebasis van uw team. Omdat het een lokale kopie op uw ontwikkelcomputer is, kunt u uw code afzonderlijk ontwikkelen en testen totdat u klaar bent om uw werk in te checken. Hier volgen enkele opdrachten voor het beheren van uw werkruimte:

Voor meer informatie raadpleegt u de volgende bronnen:

Uw app ontwikkelen

Gebruik deze opdrachten om uw app te ontwikkelen onder versiebeheer met uw team:

  • Opdracht toevoegen: Bestanden en mappen toevoegen aan versiebeheer.
  • De opdracht Uitchecken (of Bewerken): controleert een bestand en wijzigt de status van de wijziging die in behandeling is om te bewerken.
  • Opdracht Verwijderen (Team Foundation Version Control): hiermee verwijdert u bestanden en mappen van de Azure DevOps-server en verwijdert u ze van de schijf.
  • Opdracht Ophalen: hiermee haalt u de nieuwste versie of een opgegeven versie van een of meer bestanden of mappen op van Azure DevOps Server naar de werkruimte.
  • Opdracht Naam wijzigen (Team Foundation Version Control): hiermee wijzigt u de naam of het pad van een bestand of map.
  • Statusopdracht: geeft informatie weer over wijzigingen in bestanden en mappen in werkruimten of in een plankenset.
  • Opdracht Ongedaan maken: hiermee worden opgegeven wijzigingen in bestanden of mappen verwijderd die in behandeling zijn.
  • Opdracht Ongedaan maken: hiermee herstelt u items die eerder zijn verwijderd.

Zie Uw app ontwikkelen in Team Foundation-versiebeheer voor meer informatie.

Uw werk onderbreken

Om verschillende redenen moet u soms enkele of al uw lopende werkzaamheden opzij zetten. Als u uw werk wilt onderbreken en hervatten en uw plankensets wilt beheren, gebruikt u deze opdrachten:

Zie Uw werk onderbreken en uw planken beheren voor meer informatie.

Uw werk bijdragen

Gebruik de checkin opdracht om uw code in te checken bij de codebasis van het team:

  • Opdracht Inchecken: Controleert in behandeling zijnde wijzigingen in bestanden of mappen op de server.

Zie Check in your work to the team's codebase(s) voor meer informatie.

Bestanden beheren en problemen oplossen

Gebruik de resources in de volgende secties om bestanden te beheren.

Bestanden en mappen van versiebeheer weergeven en beheren

Zie Broncodebeheerverkenner gebruiken voor het beheren van bestanden onder versiebeheer voor meer informatie.

Eerdere versies weergeven en beheren

  • Opdracht Wijzigingenset: wijzigingensetkenmerken of wijzigingensets weergeven.
  • Opdracht Geschiedenis: geeft de revisiegeschiedenis van bestanden of mappen weer.
  • Opdracht Label (Team Foundation Version Control): labels worden gekoppeld aan of verwijderd uit bestanden of mappen.
  • Opdracht Labels: geeft informatie weer over labels die in gebruik zijn op de server.
  • Opdracht Terugdraaien (Team Foundation Version Control): hiermee worden de effecten van wijzigingensets teruggedraaid.
  • Opdracht Label ongedaan maken: hiermee verwijdert u een item uit een bestaand label op de server.
  • Opdracht Weergeven: haalt een opgegeven versie van een bestand op en geeft het weer.

Zie Eerdere versies weergeven en beheren voor meer informatie.

Mappen en bestanden vergelijken

Zie Eerdere versies weergeven en beheren voor meer informatie.

Bestandsconflicten oplossen

  • Opdracht oplossen: conflicten tussen items in uw werkruimte en op de server oplossen.

Zie Team Foundation-versiebeheerconflicten oplossen voor meer informatie.

Werken met versiebeheervergrendelingen

  • Opdracht Vergrendelen: bestanden en mappen vergrendelen of ontgrendelen.

Zie Werken met versiebeheervergrendelingen voor meer informatie.

Risico isoleren

Gebruik de volgende opdrachten om risico's te isoleren met behulp van vertakkingen:

Zie Vertakkingen gebruiken om risico's te isoleren in Team Foundation-versiebeheer voor meer informatie.

Beheer isterversiebeheer

Gebruik de volgende opdrachten om uw versiebeheersysteem te beheren:

Zie Check-outinstellingen configureren voor meer informatie.

Hulp krijgen bij opdrachten voor versiebeheer

Gebruik de volgende opdrachten voor gedetailleerde informatie over versiebeheeropdrachten:

De syntaxis van de opdracht begrijpen

De syntaxis van elke opdracht wordt boven aan elk verwijzingsartikel weergegeven.

Vereiste en optionele argumenten

Niet-haakjes argumenten zijn vereist. [Vierkante haken] geef optionele argumenten aan die niet nodig zijn om een opdracht te voltooien. Sommige optionele argumenten hebben echter standaardwaarden die worden toegepast op de opdracht, zelfs als u de optie niet opgeeft.

Exclusieve argumenten

Wanneer opties worden gescheiden door een pipe (|), kunt u een van de opties opgeven.

Exacte en vervangende argumenten

Items die niet tussen vierkante haken staan, zijn opties die u letterlijk opneemt. Items tussen punthaken (< en >) zijn argumenten die u moet vervangen door werkelijke tekens om een opdracht uit te voeren.

Opdrachtsneltoetsen en -aliassen

Sommige opdrachten ondersteunen snelkoppelingen. U kunt bijvoorbeeld de opdracht Verwijderen aanroepen met of tf deletetf del.

Opmerking

Denk bijvoorbeeld aan de opdracht Uitchecken:

tf checkout [/lock:( none|checkin|checkout)] [/recursive] <item-spec> [/login: <username>, [<password>]]

Dit voorbeeld bevat de volgende argumenten:

  • <item-spec>: U moet dit argument vervangen door een itemspecificatie waarmee de items worden geïdentificeerd die u uitcheckt.
  • De volgende argumenten zijn optioneel. Als u ze niet opgeeft, zijn geen van de effecten van toepassing op de opdracht:
    • /lock:(none|checkin|checkout): Als u de /lock optie niet opgeeft, gebruikt /lock:none het systeem standaard. Anders kunt u een van de andere vergrendelingsopties opgeven.
    • /recursive: Als u recursief meerdere items in een map wilt uitchecken, moet u deze optie letterlijk opgeven.
    • /login:<username>, <password>: Als u de opdracht wilt uitvoeren als een andere gebruiker, moet u de exacte bewoording van de /login optie opgeven en vervangen door <username> de naam van de gebruiker. Vervang indien nodig door <password> het wachtwoord van de gebruiker.

Geef de items op die worden beïnvloed door een opdracht

U kunt itemspecificaties en versiespecificaties gebruiken om op te geven welke items worden beïnvloed door een opdracht.

Een itemspecificatieargument gebruiken om betrokken items op te geven

U gebruikt een itemspecificatie om de items op te geven die worden beïnvloed door een opdracht. U kunt items opgeven op een clientcomputer of op uw Azure DevOps-server. U kunt jokertekens zoals * en ?gebruiken.

Specificatieargumenten voor clientitems

Een specificatieargument voor clientitems geeft een pad naar items op een clientcomputer op, zoals:

  • Een map, bijvoorbeeld c:\code\SiteApp\Main\SolutionA\.
  • Een bestand, bijvoorbeeld c:\code\SiteApp\Main\SolutionA\Project1\program.cs.
  • Meerdere bestanden, bijvoorbeeld c:\code\SiteApp\Main\SolutionA\*.cs.
  • Een UNC-pad (Universal Naming Convention), zoals \\myshare\code\SiteApp\Main.

Specificatieargumenten voor serveritems

Een specificatieargument voor serveritems geeft een pad naar items op uw Azure DevOps-server op, zoals:

  • Een map, bijvoorbeeld $/SiteApp/Main/SolutionA.
  • Een bestand, bijvoorbeeld $/SiteApp/Main/SolutionA/Project1/program.cs.
  • Meerdere bestanden, bijvoorbeeld $/SiteApp/Main/SolutionA/*.cs.

Doorgaans gebruikt u argumenten voor serveritemspecificatie wanneer u een opdracht moet uitvoeren voor items die zich niet op de clientcomputer bevinden. Stel dat u aan een ontwikkelcomputer werkt. Als u enkele revisiegeschiedenisgegevens wilt ophalen over bepaalde items in een projectverzameling waarin u niet werkt, kunt u de volgende opdracht gebruiken:

c:\>tf history /collection:https://fabrikam-3:8080/tfs/DefaultCollection
$/SiteApp/Main/SolutionA/Project1/* /recursive  
/noprompt 

Argumenten voor meerdere itemspecificaties

Voor sommige opdrachten kunt u meerdere argumenten voor itemspecificaties opgeven, bijvoorbeeld:

c:\code\SiteApp\Main\SolutionA\Project1\>tf checkout program1.cs program2.c

Met deze opdracht worden program.cs en program2.c. uitgecheckt.

Gebruik een argument voor versiespecificatie om betrokken versies van items op te geven

U gebruikt een versiespecificatie om de versie van items op te geven die worden beïnvloed door een opdracht. Als u een versiespecificatie wilt opgeven, kunt u het volgende doen:

  • Gebruik de /version optie, bijvoorbeeld /version:C44.

  • Voeg de versiespecificatie toe aan een itemspecificatie met een puntkomma, program1.cs;C44bijvoorbeeld.

Wanneer u de opdracht Geschiedenis of de opdracht Verschil gebruikt, kunt u een reeks versies opgeven door de versies te scheiden met een tilde, bijvoorbeeld:

c:\code\SiteApp\Main\SolutionA>tf history /noprompt * /recursive /v:D4/12/2022~D4/24/2022

Gebruik de volgende syntaxis om een versiespecificatie op te geven:

Type Syntaxis Beschrijving Voorbeelden Resultaat
Changeset [C]<version-number> Hiermee geeft u items op basis van een wijzigingensetnummer. Als een item dat binnen het bereik valt niet is gewijzigd in de opgegeven wijzigingenset, neemt het systeem de nieuwste versie van het item dat is opgetreden vóór de opgegeven wijzigingenset. U kunt weglaten C als u slechts een getal opgeeft. tf get readme.txt /v:C8

tf get readme.txt /v:8

tf get readme.txt;8
Als readme.txt is gewijzigd in wijzigingenset 8, haalt de voorbeeldcode die versie van het bestand op. Anders krijgt deze de meest recente versie van readme.txt vóór versie 8.
Label L<label> Hiermee geeft u items op waarop een label wordt toegepast. tf get readme.txt;LJulyHotFix

tf get /version:LLastKnownGood
In het eerste voorbeeld wordt de versie van readme.txt opgehaald met het label JuliHotFix. De tweede haalt de versie van alle gelabelde items op (en verwijdert deze items die niet zijn gelabeld) in de werkruimte, omdat ze bestonden toen de wijzigingenset met het label LastKnownGood werd gemaakt. U kunt de code in het tweede voorbeeld gebruiken als onderdeel van een geautomatiseerd buildproces.
Datum en tijd D<yyyy-mm-ddTxx:xx>

or

D<mm/dd/yyyy>

or

Elke .NET Framework-ondersteunde indeling.

or

Een van de datumnotaties die op de lokale computer worden ondersteund.
Hiermee geeft u een wijzigingenset op die is gemaakt op een opgegeven datum op een bepaald tijdstip. tf get /version:D2022-03-22

tf get /version:D2022-03-22T09:00
In het eerste voorbeeld wordt de werkruimte bijgewerkt zodat deze overeenkomt met de codebasis, omdat deze bestond op 22 maart 2022 om middernacht. De tweede werkt de werkruimte bij zodat deze overeenkomt met de codebasis, zoals deze bestond op 22 maart 2022 om 9:00 uur. Zie tekenreeksen voor datum - en tijdnotaties die door .NET Framework worden ondersteund voor meer informatie over datum- en tijdnotaties die door .NET Framework worden ondersteund.
Huidige werkruimte W Hiermee geeft u de versie in uw werkruimte. - -
Opgegeven werkruimte W<workspace-name>; <workspace-owner> Hiermee geeft u de versie in een opgegeven werkruimte. tf get /version:WResolveRIConflicts;PatW In het voorbeeld wordt de versie opgegeven in de ResolveRIConflicts werkruimte die PatW eigenaar is.
Tip T Hiermee geeft u de meest recente versie. - -

Opties gebruiken om te wijzigen hoe een opdracht functioneert

U kunt enkele algemene opties gebruiken om te wijzigen hoe een opdracht functioneert.

Gebruik de /noprompt optie om aanvragen voor gegevensinvoer te onderdrukken en uitvoergegevens om te leiden

Gebruik de /noprompt optie om aanvragen voor gegevensinvoer te onderdrukken en uitvoergegevens om te leiden naar het opdrachtpromptvenster. Deze optie kan handig zijn wanneer u versiebeheeropdrachten moet gebruiken in een script waarbij:

  • De opdracht wordt uitgevoerd zonder tussenkomst van een gebruiker.
  • De gegevens zijn beschikbaar voor het script om bewerkingen uit te voeren, zoals parseren of vastleggen.

Wanneer u deze optie gebruikt, is het systeem:

  • Onderdrukt alle aanvragen voor invoer:

    • Vragen worden niet gesteld in het opdrachtpromptvenster. Wanneer u bijvoorbeeld de opdracht Ongedaan maken gebruikt met deze optie, wordt u niet gevraagd om te bevestigen of u de wijzigingen ongedaan wilt maken.
    • Vensters en dialoogvensters worden niet weergegeven. U kunt deze optie bijvoorbeeld gebruiken met de opdracht Inchecken. Het systeem geeft het dialoogvenster Inchecken niet weer, zodat u items en gekoppelde werkitems kunt bevestigen. In plaats daarvan controleert het systeem de items zonder bevestiging.
  • Hiermee worden uitvoergegevens omgeleid naar de opdrachtprompt. U kunt deze optie bijvoorbeeld gebruiken met de opdracht Geschiedenis. De gegevens worden weergegeven in het opdrachtpromptvenster in plaats van het venster Geschiedenis.

Gebruik de /login optie om referenties op te geven

Gebruik de /login optie om het gebruikersaccount van de Azure DevOps-server op te geven om een opdracht uit te voeren. Deze optie kan handig zijn wanneer u op de computer van een ander teamlid werkt.

Stel dat u werkt op de ontwikkelcomputer van uw teamlid. U gebruikt de opdracht Vergrendelen om een bestand te ontgrendelen dat u eerder hebt vergrendeld:

c:\code\SiteApp\Main> tf lock /lock:none program.cs /login:<username>,<password>

Als u wilt voorkomen dat uw wachtwoord wordt weergegeven in de opdrachtprompt, kunt u de opdracht zonder het wachtwoord invoeren:

c:\code\SiteApp\Main> tf lock /lock:none program.cs /login:<username>

Nadat u deze opdracht hebt ingevoerd, wordt u door het systeem gevraagd uw wachtwoord in te voeren in een dialoogvenster waarin uw invoer wordt gemaskeerd.

/lock De optie gebruiken om een vergrendeling toe te passen of te verwijderen

Belangrijk

Als best practice kunt u de /lock optie naar eigen goeddunken gebruiken. Informeer uw teamleden waarom u een item vergrendelt en wanneer u de vergrendeling wilt verwijderen.

Gebruik de /lock optie om een vergrendeling toe te passen of te verwijderen op hetzelfde moment dat u een andere opdracht uitvoert, zoals Toevoegen of Bewerken.

/lock:(none|checkin|checkout)

De /lock opdracht maakt gebruik van de volgende opties:

  • None: Er wordt geen vergrendeling op een item geplaatst. Als er al een vergrendeling is ingesteld, wordt deze verwijderd.

  • Checkin of Checkout: Er wordt een vergrendeling toegepast. Zie Vergrendelingstypen begrijpen voor meer informatie.

Notitie

In enkele gevallen kan de vergrendelingsbewerking mislukken:

  • Als andere gebruikers een van de opgegeven items hebben vergrendeld, mislukt de vergrendelingsbewerking.
  • Als er al een wijziging in behandeling is voor het opgegeven item, negeert het systeem deze schakeloptie. In dit geval moet u de opdracht Vergrendelen gebruiken om een vergrendeling voor een item te wijzigen.

Optiesneltoetsen gebruiken

U kunt de volgende opties verkorten.

Optie

Optiealias

/comment

-C

/computer

-M

/delete

-D

/force

-P

/format

-F

/help

-?, -H

/lock

-K

/login

-Y

/newname

-N

/noprompt

-I

/owner

-O

/recursive

-R

/server

-S

/slotmode

-X

/template

-T

/user

-U

/version

-V

/workspace

-W

Afsluitcodes begrijpen

Versiebeheeropdrachten retourneren de volgende afsluitcodes:

Afsluitcode

Definitie

0

Geslaagd.

1

Gedeeltelijk succes. Ten minste iets, of misschien wel alles, is mislukt.

2

Niet-herkende opdracht.

100

Er is niets gelukt.

Stel dat u de volgende opdracht uitvoert:

c:\code\SiteApp\Main\SolutionA\Project1\>tf checkout program1.cs program2.c

Als een van de bestanden die u probeert uit te checken niet bestaat op de server, retourneert de opdracht 1 om aan te geven dat het gedeeltelijk is gelukt.