Probleme mit MSBuild OutputPath und OutDir in TFS2010

Wir haben eine sehr große Lösung (etwa 300+) - Projekte, und wir versuchen, es zu bauen, über MSBuild auf TFS2010.
Wir können es bauen, über MSBuild auf alle out-Entwicklung von Maschinen, und sind im Prozess der übernahme TFS.

Die Struktur der code lautet in etwa so:

bin\Client
bin\Server
Framework\ClientFramework.csproj
Modules\Module1\Project1
Modules\Module2\Project2
etc.

Jedes Projekt hat eine relative OutputPath, und baut den code in das bin-Client oder-Server-Verzeichnis. So zum Beispiel, Project1.csproj hat eine OutputPath von "..\..\bin\Client".

Scheinen wir ein problem haben, das in TFS, MSBuild die OutDir erhält einen Festen Pfad:

C:\Builds\MyProject\Binaries\

So Dinge sind immer verwirrend, wenn die Lösung der relativen OutputPath auf der Oberseite des OutDir

  • ClientFramework geht C:\Builds\MyProject\Binaries\..\bin\Client
  • Projekt1 geht C:\Builds\MyProject\Binaries\..\..\bin\Client
  • etc.

Wir haben auch einige Post-build-Ereignisse, kopieren einige 3rd-Party-dll in den bin Ordner, diese Wege nicht gelöst werden, richtig.

Ich denke, dass die Lösung, die wir nach dem bauen alles, um unseren vorhandenen bin\Client, bin\Server-Struktur und dann bewegen Sie den Ordner aus bin, um Binärdateien.

Irgendwelche Ideen auf, wie dies zu erreichen oder zu erfahren, wie wir arbeiten, geschätzt werden, aber die Aktualisierung unserer bestehenden Projekte könnten sich als problematisch herausstellen, wie das alles funktioniert mit VS, developer command line baut und mit CC.net.

InformationsquelleAutor DaveShaw | 2011-06-28
Schreibe einen Kommentar