Verschieben mehrerer Dateien in TFS Source Control

172

Ich verwende Team Foundation Server 2008 (SP 1) und muss mehrere Dateien von einem Ordner in einen anderen verschieben (um den Dateiversionsverlauf beizubehalten). Neben Team Explorer (mit SP 1) habe ich auch die neuesten TFS Power Tools (Oktober 2008) installiert (für die Windows Shell-Integration).

Das Problem ist nun, dass ich scheinbar nicht mehrere Dateien über die Shell oder das Quellcodeverwaltungs-Explorer-Fenster auswählen und verschieben kann. Ich kann einzelne Dateien verschieben (durch Klicken mit der rechten Maustaste + "Verschieben") und ganze Ordner verschieben (gleicher Vorgang), aber wenn ich mehrere Dateien (in einem Ordner) auswähle, ist das Kontextelement "Verschieben" grau / deaktiviert.

Weiß jemand, ob dies möglich ist .. und wenn nicht .. warum nicht!?

Kann jemand eine Problemumgehung vorschlagen, die nicht allzu kompliziert ist?

Bitte stimmen Sie hier ab: https://connect.microsoft.com/VisualStudio/feedback/details/715041/support-moving-multiple-files-in-tfs-source-control-explorer und hier http: //visualstudio.uservoice. com / forums / 121579-visual-studio / Vorschläge / 2271540-erlauben-mehr-als-eine-Datei-auf-einmal-in-tfs-so zu verschieben

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

RobS
quelle

Antworten:

144

Verwenden Sie das Tool tf.exe über die Visual Studio-Befehlszeile - es kann Platzhalter verarbeiten:

tf.exe move <olditem> <newitem>

Beispiel:

tf.exe move "$/My Project/V*" "$/My Project/Archive"

[BEARBEITEN] Wie in den Kommentaren erwähnt: move ist ein Alias ​​zum Umbenennen. Beide Befehle verschieben den Verlauf.

Kurt Schelfthout
quelle
7
Diese andere Antwort ist hier die bessere. Der moveParameter ist nicht dokumentiert und die Geschichte nicht bewegen, während die anderen Antwort der renameParameter werden dokumentiert und bewegt sich auch die Geschichte.
Alex Angas
12
Für den Datensatz scheint der Befehl move in TFS 2010 eine Umbenennung durchzuführen, die den Verlauf verschiebt.
John Bledsoe
10
über die TF.EXE-Hilfe: Mit dem Befehl zum Umbenennen oder dem Alias ​​verschieben können Sie eine Datei oder einen Ordner an einen neuen Speicherort verschieben. Verschieben und Umbenennen sind also genau dasselbe.
Mickey Perlstein
1
Führen Sie es auch über den zugeordneten Pfad aus, indem Sie die Befehlszeile für Visual Studio verwenden. Andernfalls ist es wichtig, den Arbeitsbereich nicht zu kennen, und bietet Ihnen eine (nutzlose) Möglichkeit, herauszufinden, welche Arbeitsbereiche Sie haben (und was dann? Nichts ich)
Mickey Perlstein
Es funktioniert auch mit relativen Pfaden. cdin den Ordner, in den Sie Dateien verschieben und sagen möchten tf move V* Archive.
Nalply
56

Verwenden Sie Umbenennen anstelle von Verschieben

tf.exe rename "$/PROJECT/SharedLibs/Log4Net/*.*" "$/PROJECT/SharedLibs/3rdParty/"
tf.exe rename "$/PROJECT/SharedLibs/ZipLib/*.*" "$/PROJECT/SharedLibs/3rdParty/"

Lesen Sie die Hilfedokumentation: TFS-Befehlszeilenreferenz

Titwan
quelle
Der obige Link wirft einen HTTP500; Falls es nicht funktioniert
Joisey Mike
12
moveist nur ein Alias ​​für rename, also spielt es keine Rolle, welchen Sie verwenden
Jeff Olson
Ich verwende die TFS-Quellcodeverwaltung von Visual Studio Online, z . B. namgivu.visualstudio.com . Das Auflisten des Arbeitsbereichs durch Aufrufen tf workspacesenthält keinen Eintrag für meine Repository-Zuordnung.
Nam G VU
"$ / X / Y / Z kann nicht umbenannt werden, wenn ihm eine Arbeitsordnerzuordnung zugewiesen ist." Ebenfalls; Platzhalter *. * Sind nicht mehr erlaubt.
Christian
"Sie dürfen keinen Platzhalter als Quelle angeben, wenn das Ziel kein Ordner in der Quellcodeverwaltung ist." Ich weiß nicht was das bedeutet. Bewegen Sie es einfach auf den Namen, auf den ich zeige.
Christian
38

Holan Jan hat eine Visual Studio-Erweiterung geschrieben, die das Verschieben mehrerer Dateien im Versionsverwaltungs-Explorer (dh mithilfe einer grafischen Benutzeroberfläche) ermöglicht. Funktioniert ein Leckerbissen und unterstützt auch neuere Versionen.

für VS2019: https://marketplace.visualstudio.com/items?itemName=HolanJan.TFSSourceControlExplorerExtension-2019

für VS2017: https://marketplace.visualstudio.com/items?itemName=HolanJan.TFSSourceControlExplorerExtension-18397

für VS2015: https://marketplace.visualstudio.com/items?itemName=HolanJan.TFSSourceControlExplorerExtension-13343

für VS2013: https://marketplace.visualstudio.com/items?itemName=HolanJan.TFSSourceControlExplorerExtension-11508

für VS2012: https://marketplace.visualstudio.com/items?itemName=HolanJan.TFSSourceControlExplorerExtension-8896

Unter der Haube werden die oben genannten Befehle verwendet, die Verwendung ist jedoch etwas freundlicher. Für jede der aufgelisteten Versionen ist eine RTM-Version von Visual Studio erforderlich.

Sid James
quelle
Ausgezeichnet! Dies ist das einzige, was für mich mit VS2010 funktioniert hat: visualstudiogallery.msdn.microsoft.com/…
Ian Campbell
Diese Erweiterung ist fantastisch - sie ermöglicht eine ganze Reihe zusätzlicher Funktionen im Versionsverwaltungs-Explorer, von denen das Verschieben mehrerer Dateien gleichzeitig nur ein Teil ist. Ich kann es nur empfehlen.
SqlRyan
-9

Kleben Sie alle Dateien, die Sie verschieben möchten, unter einen Ordner und verschieben Sie diesen Ordner.

Merrick Chaffer
quelle