2 Stimmen

Ist es möglich, mit einer .NET-Version zu bauen, ohne diese Version zu "installieren"?

Ich möchte in meinem Repository als Tagged oder Submodule die verschiedenen Versionen von .NET haben, wie es mit anderen externen Produkten nunit, ninject, rhinomocks möglich ist. ProjectX wird mit .NET 3.0 und nunit 2.4.x erstellt Projekty wird mit .NET 3.5 und nunit 2.5.x erstellt Projekt Z wird mit .NET 4.0B2 und einer Vorabversion von nunit erstellt

Ich möchte dies tun, um Änderungen von einem Rechner aus vornehmen zu können, ohne dass ich Änderungen an diesem Rechner vornehmen muss, wie z. B. die Aktualisierung auf die neueste Version von .NET, wenn sie nicht vorhanden ist. Wenn ich ein Projekt der Version 3.0, 3.5 oder sogar 4.0B2 auf einem Rechner ändern möchte, der noch auf Version 2.0 ist (vielleicht gehört er mir nicht und ich habe keine Administratorrechte). Ich möchte das Projekt auschecken, die Version von .net, die es benötigt (und andere versionierte Bibliotheken nunit, ninject, rhinomocks usw. aus dem Repository), meine Änderungen mit Notepad2 oder einem anderen NICHT-Visual-Studio-Editor vornehmen (da VS eine Installation sowie das installierte Framework erfordern würde), das Build-Skript ausführen und die Änderungen committen/pushen. Danach lösche ich die ausgecheckten/geklonten Verzeichnisse und Dateien, als wäre ich nie auf diesem Rechner gewesen.

Hintergrund: Mein Repository besteht aus vielen kleineren, nicht zusammenhängenden Projekten, nicht aus einer einzigen großen Webanwendung/Seite. Warum Versionen von externen Bibliotheken pflegen? Weil ich nicht immer ALLE Projekte auf einmal aktualisieren möchte. Wenn doch, dann gibt es ein Skript dafür. Jeder Entwickler ist ein Berater in Telearbeit. Wer weiß schon, was sich auf seinem Rechner befindet? Wen kümmert es, dass das Build-Skript auf alles (außer .NET Framework) verweist. Vielleicht geht mein Rechner kaputt und ich muss meine Oma benutzen. Vielleicht bin ich im Urlaub und jemandes Code ist kaputt (natürlich nicht meiner) und ich muss die Hotels benutzen.

3voto

JaredPar Punkte 699699

Dieses Szenario wird derzeit nicht unterstützt. Um ein Projekt einer bestimmten .Net-Variante korrekt zu erstellen, müssen Sie das entsprechende .Net-SDK (oder in einigen Fällen nur den Redist) auf dem Rechner installiert haben. Es gibt keine Möglichkeit, das .Net-Framework grundsätzlich in die Quellcodekontrolle einzubinden.

0voto

Mike Burton Punkte 2910

Ich will nicht meckern, aber würde das nicht bedeuten, dass sie den Code, den sie entwickeln, nicht unbedingt ausführen können? Und wenn ja, wäre das nicht eine schlechte Idee?

0voto

Dies wird nicht unterstützt. MSBuild wird mit dem .NET Framework selbst ausgeliefert. Wenn Sie also mit MSBuild Version X bauen wollen, wobei X (2.0/3.5/4.0) ist, benötigen Sie die entsprechende .NET Framework Version (oder höher) die auf der Maschine installiert ist, die das Gebäude errichtet.

Da Sie sich mit Berechtigungen und der Ausführung verschiedener Versionen von .NET befassen, sind Sie vielleicht an der Labor-Management Teil von Visual Studio 2010, das gerade veröffentlicht wird.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X