2016-03-23 8 views
5

Ich arbeite derzeit an einer ASP.NET-basierten Webanwendung, die versionsgesteuert über TFS ist. Ein TFS-Build-Server ist so konfiguriert, dass er den Build-Prozess bei jedem Einchecken ausführt. Mein Problem ist, dass, wenn ich die Web.Config-Datei ändere und die Änderungen einchecke, der Build-Prozess immer einen Fehler erzeugt, wenn ich die Quelle bekomme, die besagt, dass die get-Operation nicht ausgeführt werden kann, weil die Datei bereits lokal existiert. Ich habe versucht, die Web.Config von TFS zu entfernen und die Änderungen eingecheckt, aber der Fehler war immer noch da und sagte: 'Der Löschvorgang kann nicht ausgeführt werden, da die Datei bereits lokal existiert'. Aber wenn ich die Datei manuell vom Dateisystem des Erstellungsservers lösche, ist das Problem verschwunden. Was denkst du ist das Problem? Ich habe bei google nichts Relevantes dazu gefunden, daher wäre ich wirklich froh, wenn Sie mir helfen könnten. Vielen Dank!TFS-Build weiterwerfen 'Kann die get-Operation nicht ausführen, da die Datei bereits lokal existiert' Fehler

+1

Im Allgemeinen Bearbeiten von Dateien direkt auf dem Build-Server eine schlechte Idee ist. Das klingt wahrscheinlich als Ursache dieses Problems. Haben Sie versucht, die Projektdateien auf dem Build-Server zu löschen und einen vollständigen Aufruf des Projekts zu erzwingen? – Seano666

+0

Ja, du hast Recht. Die endgültige Lösung bestand darin, dass ich die web.config-Datei auf dem Webserver anstatt auf dem Build-Server ändere. – garam93

Antwort

0

In Ihrer Build-Definition haben Sie Clean Workspace Option auf Alle?

enter image description here

Wenn das nicht hilft, können Sie einstellen, die Protokollausführlichkeit zu Diagnose und sehen, ob es mehr ausführlich über das Thema ist.

+0

Danke für die Antwort. Ich habe vergessen zu erwähnen, dass der Build-Server die neuen Builddefinitionen von TFS 2015 verwendet, sodass ich nicht versuchen kann, was Sie vorgeschlagen haben. Ich habe weder die saubere Arbeitsumgebung noch die Ausführlichkeitseinstellung für die Protokollierung in der Version 2015 gefunden. – garam93

1

Da Sie sich auf TFS 2015 Build (nicht XAML Build) befinden, können Sie Clean auf der Registerkarte "Repo" der Definition überprüfen.

FYI - der neue Agent auf VSTS und in TFS 15 RC1 übergibt /overwrite an tf get, so dass Sie nicht jedes Mal einen sauberen Build erstellen müssen.

12

In TFS 2015 VSTS, löste ich das Problem, indem aus der Dropdown wahr Auswahl unten dargestellt:

enter image description here

+0

Das hat für mich funktioniert ... –