2012-05-16 1 views
9

Ich bin mit TFS 2010 und ein Skript zu schreiben, ein einfachen get spezifischer Versionsbezeichnung unserer Software zu ermöglichen. Da dies nur eine einfache Aufgabe ist, gibt es sowieso nur ein Get, ohne die aktuellen Workspace-Einstellungen zu verwenden oder die Workspace-Einstellungen auf den gewünschten Pfad zu ändern. Es gibt keinen Grund, die Dateien nach dem Abrufen mit CM zu verknüpfen, daher habe ich keinen Grund, diesen "Arbeitsbereich" zu erhalten. Ich möchte nur in der Lage sein, ein Verzeichnis zu erstellen, überall ich will und bekommen TFS mir eine Kopie der aktuellen Version auf dem aktuellen Verzeichnis markierte Dateien zu geben oder in ein Verzeichnis Ich liefere ‚on the fly‘. Es scheint keine Möglichkeit zu geben, ein einfaches Get von den Projekt-Arbeitsbereich-Einstellungen zu trennen. Fehle ich etwas oder bin ich gezwungen, die Arbeitsumgebung zu tarnen oder zu ändern, bevor ich komme?Wie ein TFS zu einem zugeführten oder aktuellen Verzeichnispfad erhalten Führen, Arbeitsplatz-Einstellungen ignorierten

+0

möglich Duplikat [Können Sie ein TFS erhalten, ohne einen Arbeitsbereich zu benötigen?] (Http://stackoverflow.com/questions/4712655/can-you-do-a-tfs-get-without-needing-a- Arbeitsbereich) –

Antwort

11

Sie werden einen Arbeitsbereich benötigen einen get zu tun, aber es braucht die gleichen Arbeitsbereich, den Sie verwenden für Visual Studio nicht zu sein. In der Tat kann man nur ein einfaches Wegwerf-Arbeitsbereich, zum Beispiel erstellen:

tf workspace /new temp_workspace /collection:http://server:8080/tfs/DefaultCollection /noprompt 
tf workfold /map $/Project/Project C:\Build\Project 
tf get C:\Build\Project /recursive /noprompt 
tf workspace /delete temp_workspace /collection:http://server:8080/tfs/DefaultCollection /noprompt 

Beachten Sie, dass die TFS SDK Mechanismen lassen aber einen Download eines Item zu tun, ohne dass ein Arbeitsbereich zu erstellen, so dass Sie ein Programm schreiben könnte um dies zu tun, aber es wäre eine angemessene Menge an Code, um die Schaffung eines Arbeitsplatzes zu vermeiden, der letztlich eine ziemlich billige Operation ist.

+0

Vielen Dank dafür. Ich werde einen temporären Arbeitsbereich erstellen, die Dateien abrufen und den temporären Arbeitsbereich sofort löschen, nachdem die Datei erfolgreich abgerufen wurde. Ich denke immer noch, dass es einen Befehlszeilenschalter für tf get geben sollte, der diesen temporären Ordner einfach für dich setzt. Der Hauptzweck besteht darin, keine der Dateien an erster Stelle mit einem Arbeitsbereich zu verbinden, da von diesem Ort aus niemals Änderungen vorgenommen werden! –

+0

@DeanRoberson: Punkt, ich werde dafür sorgen, dass das beachtet wird. Vielen Dank! –

+1

Egal, um dies vollständig über ein Skript unbeaufsichtigt zu machen? Jedes Mal, wenn ich einen Arbeitsbereich (tf workspace/new) erstelle, bekomme ich ein GUI-Fenster, um die Erstellung des Arbeitsbereichs zu überprüfen. Jedes Mal, wenn ich den temporären Arbeitsbereich lösche (tf workspace/delete), fordert er eine y/n-Antwort an. In der Utility-Dokumentation des tf-Befehlszeilenprogramms wird dafür kein Schalter angezeigt. –

Verwandte Themen