Warum wird TFS nicht aktuell?

177

Warum Warum WARUM erhalten TFS nicht immer die neueste Arbeit?

Sie hätten gedacht, dass diese Funktion gründlich getestet worden wäre.

Was ich tun muss, ist, eine bestimmte Version zu erhalten und dann beide überschreibbaren beschreibbaren Dateien zu überprüfen + alle Dateien zu überschreiben.

Ist mein lokales Setup durcheinander oder machst du das auch?

Blankman
quelle
Das Albernste, was ich sehe, ist, dass "Get Latest Version" nichts tut, selbst wenn die lokale Datei aus irgendeinem Grund gelöscht wurde. Ich hätte gedacht, dass es ziemlich offensichtlich ist, zu überprüfen, ob die lokale Datei zumindest vorhanden ist. Aber warum es nicht einfach den Zeitstempel jeder Datei auf dem Server mit der Zeit vergleichen kann, zu der Sie zuletzt einen Abruf durchgeführt haben (der irgendwo lokal gespeichert werden könnte), verwirrt mich.
Dylan Nicholson
Dies sollte ein Kommentar sein.
Jimenemex

Antworten:

118

TFS hat neu definiert, was "Get Latest" macht. In TFS-Begriffen bedeutet "Neueste abrufen", dass die neueste Version der Dateien abgerufen wird. Ignorieren Sie jedoch diejenigen, von denen der Server glaubt, dass sie sich bereits in Ihrem Arbeitsbereich befinden. Was für mich und fast alle anderen auf dem Planeten falsch ist.

Siehe diesen Link: http://blogs.microsoft.co.il/blogs/srlteam/archive/2009/04/13/how-get-latest-version-really-works.aspx

Die einzige Möglichkeit, das Ziel zu erreichen, besteht darin, eine bestimmte Version abzurufen und dann beide Kontrollkästchen "Überschreiben ..." zu aktivieren.

Nicht ich
quelle
7
Das ist nicht richtig. TFS "get latest" funktioniert genau wie angekündigt, solange TFS über Änderungen an den Dateien informiert ist. "Neueste" nur "vermasseln", wenn Leute außerhalb der IDE abgelegt und Änderungen vorgenommen haben, ohne sie vorher auszuchecken. Dann glaubt TFS, dass Sie die neueste Quelle auf der Festplatte haben, und bekommt sie nicht.
Robaticus
18
@Robaticus Wie wird tfs wirklich "aktuell" beworben? Genau wie Chris Lively zuvor gesagt hat, verstehen er und alle auf dem Planeten, dass "Get Recent" die neueste Version erhält, was tfs nicht tun würde. Sie müssen die Quelle nicht außerhalb von tfs bearbeiten, um sie durcheinander zu bringen. Ich habe 2 Workstations und arbeite austauschbar und ich kann die Quellensynchronisation einfach nicht bekommen. Die neueste Version zu bekommen ist schon ein Ärger mit tfs und ich kann mir nicht vorstellen, was das Zusammenführen möchte.
Syaiful Nizam Yahya
2
@publicENEMY, ich habe früher mit tfs auf zwei Computern gearbeitet und es ist in der Tat ein Problem, die Quellensynchronisierung durchzuführen. Möglicherweise benötigen Sie dafür zwei tfs-Benutzer ...
kroiz
11
Pfui! Das ist ein Schmerz. Visual Studio kann leicht durcheinander geraten und manchmal ist es am einfachsten, es im Dateisystem zu reparieren. Andere Versionsverwaltungssysteme wie Subversion verfügen über Windows Explorer-Hooks, und sowohl diese als auch die VS-Integration können Änderungen besser überwachen. Ich vermisse SVN!
Dan Csharpster
3
Ich stimme dem Autor zu. Ich habe "Neueste Version abrufen" als "Neueste Version vom Server abrufen" gelesen (woher sollte ich sie sonst beziehen?). In VS2010 habe ich die neueste Version abgerufen und festgestellt, dass ich die neueste Version habe. Wenn ich jedoch einen Vergleich durchführe, werden die Unterschiede zwischen der lokalen und der neuesten Server-Edition aufgelistet. Ich bin damit einverstanden, dass es die lokale Arbeit nicht überschreibt, aber es sollte zumindest einen Zeitstempelvergleich durchführen und mich nicht mit "Sie haben die neueste Version" irreführen. Als ich die lokale Version löschte, funktionierte Get Latest Version wie erwartet.
Swanny
42

Manchmal erhalten Sie nicht einmal die neueste Datei, wenn Sie Get specific version beide Kontrollkästchen aktivieren . Sie haben wahrscheinlich eine Änderung an einer Datei vorgenommen und möchten diese Änderungen rückgängig machen, indem Sie die neueste Version erneut abrufen. Nun ... das ist was Undo pending changesund nicht der Zweck von Get specific version.

Wenn im Zweifel:

  • Rückgängigmachen des ausstehenden Eincheckens in die Datei (en)
  • Führen Sie anschließend einen Vergleich durch, um sicherzustellen, dass Ihre Datei mit der erwarteten Version übereinstimmt
  • Führen Sie anschließend einen rekursiven Vergleich für Ihr gesamtes Projekt durch, um festzustellen, was sonst noch anders ist
  • Behalten Sie das Fenster ausstehende Änderungen im Auge. Manchmal müssen Sie möglicherweise die Option "Serverversion übernehmen" aktivieren, um eine inkompatible ausstehende Änderung zu beheben

Und das ist mein Favorit, den ich gerade entdeckt habe:

  • Halten Sie im OutputFenster Ausschau nach Nachrichten wie diesen:

    Warnung - R: \ TFS-PROJECTS \ www.example.com \ ExampleMVC \ Example MVC \ Example MVC.csproj kann nicht aktualisiert werden, da eine Bearbeitung aussteht.

Diese kritische Meldung wird im Ausgabefenster angezeigt. Keine weiteren Benachrichtigungen! Nichts in ausstehenden Änderungen und keine andere Dialogmeldung, die Sie darüber informiert, dass die gerade angeforderte Datei nicht abgerufen wurde! Und ja - Sie lösen dieses Problem, indem Sie einfach Undo pending changesdie Datei ausführen und abrufen.

Simon_Weaver
quelle
Danke, deine Antwort ( Undo pending changes) hat bei mir funktioniert.
RAM
Stellen
@Simon_Weaver Danke, dies hat mein Problem gelöst, es macht Sinn, warum es immer noch super nervig passiert.
Nulltron
12

TFS tut dies wie einige andere Versionsverwaltungsanbieter wie Perforce, da das System weiß, welche Version Sie zuletzt erfolgreich erhalten haben. Die neuesten Versionen werden also zu "Änderungen seit x abrufen". Wenn Sie sich an die Regeln halten und die Dinge tatsächlich überprüfen, bevor Sie sie bearbeiten, verwirren Sie die Dinge nicht, und "Get Recent" macht wirklich das, was es sagt.

Wie Sie gesehen haben, können Sie es zwingen, alles neu zu bewerten, was eine viel größere Bandbreitennutzung hat, sich aber näher verhält als früher bei SourceSafe.

Rowland Shaw
quelle
11

Es ist schwierig, auf eine Anweisung ohne Beispiele zu antworten, wie sie nicht funktioniert, aber es ist wichtig zu verstehen, dass TFVC (im Modus "Server Workspace", der vor TFS 2012 der Mechanismus war) den Status Ihres lokalen Dateisystems nicht untersucht . TFVC-Server-Arbeitsbereiche sind Systeme vom Typ "Auschecken, Bearbeiten, Einchecken", bei denen dies beabsichtigt ist. Dies ist eine absichtliche Entscheidung, um die Menge an Datei-E / A, die zur Bestimmung des Status Ihres Arbeitsbereichs erforderlich ist, massiv zu reduzieren. Stattdessen werden die Arbeitsbereichsinformationen auf dem Server gespeichert.

Dadurch können TFVC Server-Arbeitsbereiche auf sehr skaliert werden sehr effizient große Codebasen werden. Wenn Sie sich in einer Multi-Gigabyte-Codebasis befinden (wie Visual Studio oder der Windows-Quellbaum), muss Ihr Client Ihr lokales Dateisystem nicht scannen und nach Dateien suchen, die sich möglicherweise geändert haben, da Sie mit TFS einen Vertrag haben wird eine Datei explizit auschecken, wenn Sie sie bearbeiten möchten.

Sie erwarten nicht , eine Datei als schreibgeschützt markiert und ändern , ohne es zunächst explizit heraus zu überprüfen. Wenn Sie diesen Weg gehen, weiß der Server nicht, dass Sie Änderungen an Ihrer Datei vorgenommen haben, und durch Ausführen eines Vorgangs "Neueste abrufen" wird Ihr lokaler Arbeitsbereich nicht aktualisiert, da Sie dem Server nicht mitgeteilt haben, dass Sie Änderungen vorgenommen haben Änderungen.

Wenn Sie tun , diesen Mechanismus unterlaufen , dann können Sie das verwenden tfpt reconcileBefehl Ihren lokalen Arbeitsbereich für Änderungen zu prüfen , dass Sie vor Ort gemacht haben.

Wenn Sie "Spezifische Version abrufen" verwenden und die Optionen "Erzwingen" und "Überschreiben" auswählen, ist es sehr wahrscheinlich, dass Sie die Gewohnheit haben, alle von TFS implementierten Durchsetzungsmaßnahmen zu umgehen, um zu verhindern, dass Sie sich selbst verletzen. und Sie sollten wahrscheinlich lokale TFVC-Arbeitsbereiche in Betracht ziehen.

TFVC Local Workspaces bieten ein Versionskontrollsystem vom Typ "Edit-Merge-Commit". Dies bedeutet, dass Sie Dateien vor dem Bearbeiten nicht explizit auschecken müssen und sie nicht schreibgeschützt auf der Festplatte sind. Stattdessen müssen Sie lediglich die Datei bearbeiten, und Ihr Client scannt das Dateisystem, bemerkt die Änderung und präsentiert sie als ausstehende Änderung.

TFVC Local Workspaces werden für kleine Projekte empfohlen, für die keine differenzierte Berechtigungssteuerung erforderlich ist, da sie einen wesentlich besseren Workflow bieten. Sie müssen nicht online sein und müssen Dateien nicht explizit auschecken, bevor Sie sie bearbeiten.

Lokale TFVC-Arbeitsbereiche sind die Standardeinstellungen in TFS 2012. Wenn sie für Sie nicht aktiviert sind, sollten Sie Ihren Serveradministrator fragen. (Organisationen mit sehr großen Codebasen oder strengen Prüfanforderungen können TFVC Local Workspaces deaktivieren.)

Eric Sinks ausgezeichnetes Buch " Versionskontrolle anhand eines Beispiels" beschreibt die Unterschiede zwischen Checkout-Edit-Check-In- und Edit-Merge-Commit-Systemen und wann eines geeigneter ist als das andere.

Das Professional Team Foundation Server 2013- Buch enthält außerdem hervorragende Informationen zu den Unterschieden zwischen TFVC Server-Arbeitsbereichen und lokalen TFVC-Arbeitsbereichen. Die MSDN-Dokumentation und die Blogs enthalten außerdem detaillierte Informationen:

Edward Thomson
quelle
Tolle, informative Antwort, aber ich bin mir nicht sicher, ob das "Markieren einer Datei als schreibgeschützt" das OP beantwortet. Ich weiß, dass ich Visual Studio (jetzt 2013) verwende, um alle meine Änderungen an * .cs-Dateien in einem MVC .NET-Projekt vorzunehmen, und wenn ich meinen Laptop hochfahre, lässt mich "Get Latest" oft an dem Punkt hängen, an dem ich bin Ich bin fast Frachtkult "Advanced >>> Get Specific >>> Latest >>> Overwrite" jetzt. Es gibt kein Bearbeiten oder Einchecken außerhalb von VS. VS findet die von mir bearbeiteten Dateien und fügt sie ordnungsgemäß in ausstehende Änderungen ein. Ich checke sie bei VS ein. Ich kann nichts sehen, was "mich selbst verletzen" würde, aber das Neueste funktioniert nicht zuverlässig. ??
Ruffin
@ruffin Sie sagen , dass get neuesten hängt ? So habe ich die Frage des OP nicht interpretiert. Wird es jemals fertig? Sind andere Operationen langsam oder nur ein Get? Ist Get w / Overwrite jemals langsam oder nur das übliche Get Latest?
Edward Thomson
Nein, hängt nicht. Ich kann das Neueste abrufen, und es scheint zu funktionieren (und relativ schnell zu funktionieren), aber die Dateien ändern sich nicht. Wenn ich spezifisch werde >>> Neueste >>> Überschreiben, genau wie bei @NotMe vorgeschlagen , "holen" die Dateien auf. Wahrscheinlich roter Hering: Kommt auch gelegentlich bei Shelfsets vor. Ja, meine Arbeitspfade sind korrekt, oder Get Specific würde nicht funktionieren, glaube ich nicht.
Ruffin
Ich habe hier keinen guten Vorschlag. Ich wünschte, Sie würden sich an den Support wenden, wenn Sie ein langjähriges Problem haben, von dem Sie glauben, dass es ein Fehler ist. Unabhängig davon, ob dies ein Fehler ist oder nicht, sollten Sie eine Lösung für dieses Problem erhalten.
Edward Thomson
6

Team Foundation Server (TFS) verfolgt seine lokale Kopie in einem versteckten Verzeichnis namens $ TF. Wenn Sie die "Neueste Version abrufen" ausgeben, überprüft TFS diesen Ordner und stellt fest, ob ich die neueste Kopie habe oder nicht. In diesem Fall wird die neueste Kopie nicht heruntergeladen. Es spielt keine Rolle, ob Sie die Originaldatei haben oder nicht. Möglicherweise haben Sie sogar den gesamten Ordner gelöscht (wie in meinem Fall), und TFS ruft nicht die neueste Kopie ab, da nicht die eigentliche Datei, sondern das versteckte Verzeichnis, in dem Änderungen aufgezeichnet werden, angezeigt wird. Der Fehler bei diesem Design ist, dass alles, was außerhalb des Systems ausgeführt wird, nicht in TFS aufgezeichnet wird. Sie können beispielsweise in den Windows Explorer gehen, einen Ordner oder eine Datei löschen und TFS erkennt sie nicht. Es wird total blind sein. Zumindest würde ich dort erwarten, dass Windows Sie diese Datei nicht löschen lässt, aber es tut!

Eine Möglichkeit, die neueste Kopie zu erzwingen, besteht darin, den versteckten $ TF-Ordner manuell zu löschen. Gehen Sie dazu zur Eingabeaufforderung und navigieren Sie zu dem Stammordner, in dem Ihr Projekt ausgecheckt wurde, und geben Sie diesen Befehl aus

rd/s $tf                    // remove $TF folder and everything inside it

Wenn Sie nur den versteckten Ordner überprüfen möchten, können Sie dies mit tun

dir /ah                    // display hidden files and folders

Hinweis: Wenn Sie dies tun, wird der tf denken, dass Sie keine lokale Kopie haben, obwohl Sie sie in Dateien haben, und alles wird erneut synchronisiert.

Achtung: Verwenden Sie diese Methode auf eigenes Risiko. Bitte verwenden Sie es nicht bei kritischen Arbeiten.

Hammad Khan
quelle
Das hat bei mir funktioniert, als sonst nichts. Ich habe versucht, eine bestimmte Version abzurufen, und beide Kontrollkästchen aktiviert, um den Download zu erzwingen, aber dadurch wurden die Dateien nicht abgerufen. Ich denke, etwas war korrupt. Aber diese Lösung hat funktioniert.
Francisco d'Anconia
3

"Neueste Version abrufen" lädt standardmäßig nur die Dateien herunter, die sich seit dem letzten Ausführen von "Neueste Version abrufen" auf dem Server geändert haben. TFS verfolgt die von Ihnen heruntergeladenen Dateien, sodass es keine Zeit damit verbringt, dieselbe Version der Dateien erneut herunterzuladen. Wenn Sie die Dateien außerhalb von Visual Studio ändern, kann dies zu Konsistenzproblemen führen, die anscheinend angezeigt werden.

David
quelle
3

Leider muss es in TFS 2008 einen oder mehrere Fehler geben, da dieses Problem regelmäßig auf Entwicklercomputern auftritt und Server erstellt, auf denen ich auch arbeite.

Ich kann Get Latest ausführen. In der Verlaufsliste des Projekts kann ich sehen, dass nach dem letzten Get Latest-Vorgang Commits durchgeführt wurden. Ich habe die Dateien auf der Festplatte in keiner Weise berührt, sondern nach der Funktion "Get Latest" Abgeschlossen, wenn ich die Registerkarte TFS überprüfe, sagen einige der Dateien immer noch, dass sie nicht die neueste Version sind.

Offensichtlich kann TFS feststellen, dass ich lokal alte Dateien habe, da dies in der Liste angegeben ist. Get Latest tut dies jedoch nicht. Holen Sie sich die neueste Version. Wenn ich das tue, was Sie getan haben, verwenden Sie die Version "Spezifisch abrufen" und aktivieren Sie die beiden Kontrollkästchen am unteren Rand des Dialogfelds. Anschließend werden die Dateien abgerufen.

Wir haben unsere Build-Server so geändert, dass stattdessen immer der Funktionstyp Get Specific version verwendet wird. Daher funktioniert dieser Teil jetzt. Da unser Build-Server (TeamCity) jedoch auch darauf angewiesen ist, zu überprüfen, ob Änderungen an den Dateien vorgenommen wurden, um einen Build zu starten Manchmal verfällt es in den Modus "Nichts geändert, hier nichts zu sehen, weiterzumachen" und es wird nichts unternommen, bis wir die Build-Konfiguration zwangsweise ausführen.

Beachten Sie, dass dieses Problem auf einem Computer aufgetreten ist, der nie berührt wird, mit Ausnahme des neuesten Builds, beide manuell, sodass die Dateien nicht manipuliert werden. Es ist nur TFS, das verwirrt wird.

Einmal, als dies auftauchte, stellte ich sicher, dass die Dateien auf der Festplatte tatsächlich binär identisch mit der zuvor abgerufenen Version waren, sodass keine manuellen Manipulationen an den Dateien vorgenommen wurden.

Außerdem kann ich nicht erkennen, wie TFS "wissen" kann, ob sich Dateien auf der Festplatte geändert haben oder nicht, ohne den Inhalt tatsächlich zu betrachten. Wenn ein Teil von TFS erkennen kann, dass die Dateien tatsächlich nicht die neueste Version sind, sollte die Version "Neueste Version" unbedingt die neueste Version erhalten können. Dies in Bezug auf Kommentare zu anderen Antworten hier.

Lasse V. Karlsen
quelle
TFS hängt von der Versionsnummer einer Datei ab, um festzustellen, ob Sie die "neueste" Version haben oder nicht. Diese Nummer wird vollständig in TFS verwaltet und nur aktualisiert, wenn jemand eincheckt. Wenn Sie also "Neueste abrufen", überprüft TFS die Datenbank, um festzustellen, welche Version zuletzt an Sie gesendet wurde. Wenn diese Nummer der aktuellen Version entspricht, wird davon ausgegangen, dass Sie über die neueste Version verfügen. unabhängig davon, was sich tatsächlich in Ihrem lokalen Dateisystem befindet. Die Idee war, den Netzwerkverkehr zu begrenzen. Leider funktioniert dieses Modell nur, wenn alle Änderungen in einer Anwendung mit TFS-Kenntnissen vorgenommen werden.
NotMe
Ich stimme auch zu, dass es mindestens einen Fehler in der Version 2005/08 gibt. Ich habe die genauen Probleme gesehen, die Sie auf mehreren Computern beschrieben haben. Das hat mich dazu gebracht, Get Specific Version religiös zu verwenden.
NotMe
In einigen Fällen wurden Änderungen vollständig in Visual Studio auf einem Computer und dem anderen Computer vorgenommen. Der einzige Zweck besteht darin, den neuesten Build zu erhalten. Es werden niemals lokale Änderungen vorgenommen. Dennoch schafft es das zu vermasseln. Ich bin nicht beeindruckt von TFS Source Control, um es gelinde auszudrücken. Hoffentlich wird 2010 weniger dieser Probleme haben.
Lasse V. Karlsen
3

Dies kann daran liegen, dass Sie TFS als denselben Benutzer anmelden und der Name des Arbeitsbereichs (standardmäßig basierend auf dem Computernamen) ebenfalls derselbe ist. TFS geht also davon aus, dass Sie sich auf demselben Computer und demselben Arbeitsbereich befinden, sodass Sie bereits über die neueste Version von verfügen die Dateien, so dass es sie nicht für Sie bekommt.

Versuchen Sie, Ihren Computer umzubenennen, und erstellen Sie einen neuen Arbeitsbereich als neuen Computer.

WalkingCat
quelle
2

Ich hatte das gleiche Problem mit Visual Studio 2012. Unabhängig davon, was ich getan habe, wurde der Code nicht von der TFS-Quellcodeverwaltung abgerufen.

In meinem Fall war die Ursache, dass ein Ordner + Unterordner von der Quellcodeverwaltung separat, aber demselben Baum in meiner lokalen Festplatte zugeordnet wurde.

Die Lösung bestand darin, die Unterordnerzuordnung mithilfe des Fensters "Arbeitsbereiche verwalten" zu entfernen.

Nir
quelle
1

Die meisten Probleme, die ich bei Entwicklern gesehen habe, die sich darüber beschwert haben, dass Get Latest nicht das tut, was sie erwarten, sind darauf zurückzuführen, dass sie ein Get Latest vom Projektmappen-Explorer und nicht vom Quellcodeverwaltungs-Explorer ausführen. Der Projektmappen-Explorer ruft nur die Dateien ab, die Teil der Lösung sind, und ignoriert alle Elemente, die möglicherweise von Dateien innerhalb der Lösung und damit Teil der Quellcodeverwaltung benötigt werden, während der Quellcodeverwaltungs-Explorer Ihren lokalen Arbeitsbereich mit dem Repository auf dem Server vergleicht, um festzustellen, welche Dateien vorhanden sind wird gebraucht.

levelnis
quelle
Ich habe es im Team Explorer versucht, immer noch das gleiche Ergebnis. In meinem Fall habe ich den Ordner gelöscht und wollte die neueste Kopie wieder bekommen, aber kein Glück.
Hammad Khan
1
Ich stimme dieser Antwort nicht zu. Wenn Sie mit verschiedenen Lösungen verwendeten Projekte freigegeben haben, Sie haben es in Projektmappen - Explorer zu tun, sonst wird es nur ein Get - Weg an diesem TFS tun
Heliac
Warum die Option aus dem Projektmappen-Explorer hinzufügen, wenn Sie sie nicht verwenden sollen? Als ich auf "Alle Dateien anzeigen" klickte, war die Datei dort, aber nicht in meinem Projekt enthalten. Seltsam, da ich nicht einmal derjenige war, der es hinzugefügt hat.
MokumaxCraig
1

Wenn ich auf dieses Problem stoße, weil es nicht auf dem neuesten Stand ist und die Version nicht übereinstimmt, setze ich zuerst eine "Get Specific Version" (Spezifische Version abrufen), setze es auf "Changeset" und füge 1 ein. Dadurch werden alle Dateien aus Ihrem lokalen Arbeitsbereich entfernt (für dieses Projekt, Ordner, Datei usw.) und es wird auch ein TFS-Update geben, damit es weiß, dass Sie jetzt KEINE VERSION HERUNTERGELADEN haben. Sie können dann ein "Get Latest" und eine Bratsche machen, Sie werden tatsächlich die neueste haben

mjlarezzo
quelle
1

Dies kann passieren, wenn Sie TFS von zwei verschiedenen Computern mit demselben Konto verwenden. Wenn dies der Fall ist, sollten Sie vergleichen, um geänderte Dateien anzuzeigen und sie auszuchecken. Dann erhalten Sie die neuesten Informationen und machen ausstehende Änderungen rückgängig, um das Auschecken zu entfernen

Mohamed Badr
quelle
1

Dies funktionierte für mich:
1. Beenden Sie Visual Studio.
2. Öffnen Sie ein Befehlsfenster und navigieren Sie zum Ordner: "% localappdata% \ Local \ Microsoft \ Team Foundation \".
3. Navigieren Sie zu den Unterordnern für jede Version und löschen Sie den Unterordner "Cache" und sein Inhalt
4. Starten Sie Visual Studio neu und stellen Sie eine Verbindung zu TFS her.
5. Testen Sie die neueste Version.

Ludwo
quelle
0

Ich möchte nur TFS hinzufügen. MSBuild unterstützt keine Sonderzeichen in Ordnern, dh "@".

Ich hatte in der Vergangenheit erlebt, dass einer unserer Projektordner External @ Project1 heißt

Wir haben eine TFS-Build-Definition erstellt, um eine benutzerdefinierte msbuild-Datei auszuführen. Dann erhält der Arbeitsbereichsordner während des Arbeitsbereichs-Abrufs keinen Inhalt im Ordner External @ Project1. Es scheint, dass tfs get fehlschlägt, aber keinen Fehler anzeigt.

Nach einigem Ausprobieren und Umbenennen des Ordners in _Project1. voila wir haben Dateien auf dem Ordner (_Project1).

bherto39
quelle
TFS oder nicht, Sie sollten niemals Sonderzeichen in Projektordnernamen verwenden!
Heliac
@ ist nichts Besonderes. Und% usw. usw. sind es auch nicht. Es ist nur die Faulheit von Microsoft, die dazu führt, dass solche Zeichen anders behandelt werden als "normale" Zeichen.
Kevin Whitefoot
0

Werkzeug: TFS-Elektrowerkzeuge

Quelle: http://dennymichael.net/2013/03/19/tfs-scorch/

Befehl: tfpt scorch / recursive / deletes C: \ LocationOfWorkspaceOrFolder

Daraufhin wird ein Dialogfeld angezeigt, in dem Sie aufgefordert werden, eine Liste von Dateien zu löschen oder herunterzuladen. Wählen Sie die Dateien entsprechend aus oder deaktivieren Sie sie und drücken Sie OK. Darstellung im Raster (CheckBox, FileName, FileAction, FilePath)

Ursache: TFS wird nur mit Elementen im Arbeitsbereich verglichen. Wenn Änderungen außerhalb des Arbeitsbereichs vorgenommen wurden, sind sie TFS nicht bekannt.

Hoffentlich findet das jemand nützlich. Ich habe diesen Beitrag gefunden, nachdem ich eine Handvoll Ordner an verschiedenen Orten gelöscht habe. Wenn ich mich nicht daran erinnere, welche Ordner ich gelöscht habe, wurde die übliche Option zum Abrufen / Ersetzen erzwingen ausgeschlossen, die ich verwendet hätte.

Nick
quelle
0

In meinem Fall funktionierte es nicht, eine bestimmte Version abzurufen, selbst wenn beide Kontrollkästchen aktiviert und alle ausstehenden Änderungen rückgängig gemacht wurden.

Überprüfte die Arbeitsbereiche. Bearbeiten Sie den aktuellen Arbeitsbereich. Überprüfen Sie alle Pfade. Der Lösungspfad war falsch und zeigte auf einen gelöschten Ordner.

Der Pfad wurde korrigiert und die neuesten Funktionen wurden ordnungsgemäß ausgeführt.

Himanshu Patel
quelle
0

Klicken Sie mit der rechten Maustaste: Erweitert> Bestimmte Version abrufen . Wählen Sie "Letest Version" und markieren Sie jetzt zwei wichtige Punkte: Geben Sie hier die Bildbeschreibung ein

Die Überprüfungen sind:
Überschreiben Sie beschreibbare Dateien, die nicht überprüft werden

Überschreiben Sie alle Dateien, auch wenn die lokale Version mit der angegebenen Version übereinstimmt

Javier FF
quelle
Bitte beschreiben Sie die Elemente, die überprüft werden müssen, anstatt einen Screenshot zu veröffentlichen.
Chuck Adams