2009-10-21 9 views
5

In meiner Firma entwickeln wir unsere ASP.NET-Anwendungen als Websites und arbeiten oft nur von unserem Netzlaufwerk, das direkt auf die Dateien auf unserem Entwicklungs-Webserver verweist. Unser Code wird zum Zeitpunkt der HTML-Anfrage kompiliert, sodass wir unsere Webanwendungen nicht erstellen. Ich habe gelesen, dass automatisierte Builds eine Best-Practice-Methode sind, und beabsichtigen, dies auch irgendwann zu erreichen. Im Moment benutzen wir VSS, was furchtbar ist und ich würde gerne zu Subversion wechseln.Bereitstellen von Code aus dem Subversion-Repository auf dem Webserver ohne Erstellen

Ich habe über NAnt für Builds und Bereitstellung gelesen, und auch nur über CruiseControl.NET gehört. Kann ich diese Tools einfach verwenden, um Code aus unserem SVN-Repository auf unseren Entwicklungs-Webserver zu übertragen, wenn ein Entwickler Änderungen an seiner Arbeitskopie festlegt?

Antwort

1

Sie können sicherlich. Ich habe eine sehr ähnliche Migration durchlaufen. Wir haben immer unsere Web-Apps kompiliert, aber wir haben von VSS zu SVN migriert und dann cruisecontrol und nant eingerichtet, um unsere Builds und Deployments zu automatisieren. Wir haben nur mit Windows Explorer ziehen und fallen lassen, was ziemlich schmerzhaft war.

Zufällig blogge ich über diesen Prozess. Mein letzter Beitrag deckt speziell mit cruisecontrol.net und NANT: http://www.mattwrock.com/post/2009/10/22/The-Perfect-Build-Part-3-Continuous-Integration-with-CruiseControlnet-and-NANT-for-Visual-Studio-Projects.aspx

+0

Danke, ich werde auf jeden Fall diesen Beitrag auschecken! – JustinP8

+0

geschrieben http://www.mattwrock.com/post/2009/10/22/The-Perfect-Build-Part-3-Continuous-Integration-mit-CruiseControlnet-and-NANT-for-Visual-Studio-Projects. aspx –

+0

Ich mag diese Artikelserie wirklich. Ich wünschte, ich hätte die Zeit, ein schönes System so zu planen. Wir sind hier sehr ähnlich aufgebaut. Das sieht so aus, als würde es mehrere Probleme lösen, die wir jetzt haben. Tue jedoch zu den Zeitbeschränkungen im Moment, und ich bin der jr. Entwickler mit wenig Pull, muss ich nach einer leichteren Startlösung suchen. Ich denke, einen Post-Commit-Hook auszuführen, der nur auf dem Server ausgeführt und aktualisiert wird. – JustinP8

0

Yep.

In einer Firma haben wir ein nAnt-Skript erstellt, das dies getan hat. Sehr einfach und effektiv, aber extrem kryptisch zu ändern oder zu aktualisieren.

An einem anderen verwendeten wir Cruise Control, die gut funktionierte, aber wieder ein wenig kryptisch war (ich denke, es nutzt nAnt auf dem Backend), aber war sehr schön zu sehen und die Schritte und Probleme visuell zu sehen.

Ehrlich gesagt, ist der neueste Team Server von MS sehr gut in der Verwaltung von Code und sehr gut in der Erstellung von Builds. Bei weitem der einfachste und effektivste Weg, den ich jemals verwendet habe, um .net Code zu implementieren.

1

Ich bin CM/Entwickler in meiner Firma. Wir verwenden Nant, CCNET und Subversion für die kontinuierliche Integration und automatisierte Bereitstellung auf den DEV-Servern. Funktioniert perfekt. Zu beachten: 1. Wenn Sie Nant erhalten, erhalten Sie Nant contrib sowie 2. Wenn Sie Installer erstellen und bereitstellen, wird es einfacher sein, devenv.exe zu verwenden, um die Installer zu erstellen. 3. Sie können PSTools auschecken, um Daten auf Remote-Servern zu installieren. 4. Ich würde zwei verschiedene Build-Kategorien in CCNEt einrichten, 1. für Continous und 2. Für Force-Builds .... sollte dies Ihre Veröffentlichung sein.

Die Einrichtung kann ziemlich komplex werden, ich habe es auch mit VSS verwendet, mailen Sie mir, wenn Sie Fragen haben oder Skripthilfe benötigen.