Laden...

VS: Quellcode und generierte Dateien sauber trennen

Erstellt von Seikilos vor 13 Jahren Letzter Beitrag vor 13 Jahren 2.487 Views
S
Seikilos Themenstarter:in
753 Beiträge seit 2006
vor 13 Jahren
VS: Quellcode und generierte Dateien sauber trennen

Wir haben ein paar Schwierigkeiten unter VS 2008 einen Projekt so anzulegen, dass jegliche Generate von Visual Studio in ein anderes Verzeichnis gepackt werden, als die Source Location.

Zum Beispiel kriegen wie das obj Verzeichnis nicht gescheit verlegt und alle Meta Daten, die Visual Studio generiert, werden neben der Solution abgelegt.

Hat jemand schon mal geschafft den Source komplett sauber zu halten?

Life is a short

Gelöschter Account
vor 13 Jahren

Hat jemand schon mal geschafft den Source komplett sauber zu halten?

Ja. Im SourceControl ist sind die Sourcen komplett sauber, weil nur das eingecheckt wird (Bzw. vom SourceControl verwaltet wird), was absolut notwendig ist. Also kein "bin" und kein "obj" ordner und auch kein anderer mist wie z.B. die ".suo" Dateien.

Alles andere macht absolut keinen Sinn.

1.378 Beiträge seit 2006
vor 13 Jahren

... 👍

S
Seikilos Themenstarter:in
753 Beiträge seit 2006
vor 13 Jahren

Ich rede nicht vom SVN, das ist natürlich sowieso sauber. Aber wenn ich es ausgecheckt habe, will ich am Speicherort der Source keine anderen Dateien haben, die Visual Studio generiert. Ich rede nicht von SVN Ignore Regeln oder derartigem, ich will nur den Ort der Metadaten sinnvoll umlegen können. C++ und C++/CLR haben ja einen weit größeren Konfigurationsradius. Da kann man angeben, wohin die Intermediate Directories hin sollen. Das fehlt mir bei C# enorm.

Life is a short

Gelöschter Account
vor 13 Jahren

Ich habe nun über ein Dutzend Projekte mit C# hinter mir. Teilweise waren es gigantische Projekte aber solch eine Anforderung ist mir bislang noch nicht untergekommen.

Daher die Frage: Wozu?

R
103 Beiträge seit 2009
vor 13 Jahren

http://geekswithblogs.net/jolson/archive/2006/03/11/72061.aspx

geht wohl nur vernünftig mit msbuild. Ist bei mir aber auch nie soo relevant gewesen.
Was ich immer ganz gerne mache ist allerdings vor release versionen alle obj files zu löschen und mit msbuild nen rebuild zu machen. das habe ich mit einem kleinen Batch file gelöst:

@echo off
rem alle obj verzeichnisse eintfernen
for /F %%s in ('dir obj /A:D /s /b') do rmdir %%s /S /Q
rem mein build dir entfernen
rmdir output /s /q
rem msbuild mit  Framework 2.0 aufrufen
%SYSTEMROOT%\Microsoft.NET\Framework\v3.5\msbuild.exe /p:Configuration=Release /tv:2.0 /m

Gelöschter Account
vor 13 Jahren

MsBuild betrachtet den 'obj' Ordner nicht, daher ist das Löschen Sinnfrei.

R
103 Beiträge seit 2009
vor 13 Jahren

achso msbuild mach imemr nen clean rebuild?

Gelöschter Account
vor 13 Jahren

Nein. Aber so macht er das: "MSBuild.exe MyProject.proj /t:rebuild"