Frage

Was würden ihr als gute Referenzen für die Einrichtung eines Testservers (XAMPP auf XP Pro), einen Staging -Server und einen Produktionsserver empfehlen und gleichzeitig SVN haben? Ich bin ein Noob für die "Hardcore" -Entwicklung, möchte aber auf dem richtigen Fuß beginnen und meine Umgebungen wie die Profis einrichten. Ich habe mehrere Projekte und möchte zwei Schritte anstelle von einem Schritt nach vorne und zwei zurück machen.

Meine Hauptbereiche des geringsten Verständnisses sind ... die korrekten Dateipfade zwischen allen Servern und Datenbanken (zu tun mit localhost/seiten.com/file.html vs www.site.com/file.com) zu korrigieren, um Aktualisierungen auf den nächsten Server zu drücken - Testen der Inszenierung der Produktion sowie der Verwendung von SVN (wir werden gleichzeitig mehrere Personen an denselben Projekten arbeiten).

Jedes Projekt verfügt über einen einzelnen Server, sodass Informationen zum Ladeausgleich und das Einrichten mehrerer Server nicht erforderlich sind. Wir planen auch, NetBeans oder Eclipse für SVN zu verwenden, sofern nicht anders vorgeschlagen.

Produktions- und Staging -Server werden Lampen sein, während das Testen auf XP Pro testet wird. Danke für all die Hilfe!

War es hilfreich?

Lösung

Als Antwort auf die Anfrage von Chad finden Sie weitere Beispiele für die Umgebungsordner und Konfigurationsdateien. Weitere Informationen:

Wir haben alle Einstellungen, die vom Projekt in Konfigurationsdateien aufgeteilt werden. Wir erstellen Websites, sodass diese Konfigurationsdateien auf Web.config verwiesen werden.

In unserem Konfigurationsordner haben wir beispielsweise eine ConnectionStrings.config (Natürlich füllen Sie Ihre Informationen anstelle der [] s):

<connectionStrings>
    <add name="APP"
         connectionString="Data Source=[];Initial Catalog=[];uid=[];password=[]"
         providerName="System.Data.SqlClient" />
</connectionStrings>

Weg dazu ist:

Site root
|--> Configuration

Es wird also in der Web -Konfiguration mit diesem verwiesen:

<connectionStrings configSource="Configuration\ConnectionStrings.config" />

In unserem Lösungsordner hätten wir diese Struktur:

Solution folder
|--> Environments
  |--> Development
    |-->Configuration
      |--> ConnectionStrings.config
  |--> Production
    |-->Configuration
      |--> ConnectionStrings.config
  |--> Staging
    |-->Configuration
      |--> ConnectionStrings.config
|--> Src
  |--> Project folder (site root)
    |--> Configuration
      |--> ConnectionStrings.config

Gleiches gilt für andere Einstellungen, normalerweise in unsere Appsetings.config. Dinge wie die Pfade zu Dateien oder eine andere Einstellung, die sich ändern würden.

<appSettings>
    <add key="FilePath" value="C:\FileStorage"/>
</appSettings>

Andere Tipps

3 Teile zu Ihrer Frage:

1) Konfigurationsdateiunterschiede zwischen den Servern - Wir haben Umgebungsordner in unserem Projekt, in denen wir die Konfigurationsdateien speichern, um mehrere Versionen aufrechtzuerhalten.

So wie:

Solution folder
    |--> Environment
      |--> Development
      |--> Staging
      |--> Production
    |--> Src
      |--> Project folders

Unsere Build -Skripte werden dann erstellt, um einen Parameter für die Umgebung zu akzeptieren und den richtigen Umgebungsordner zu ziehen, wodurch die Originaldateien überschreiben.

2) Verschieben von Codeänderungen auf Umgebungsserver - In SVN richten wir Filialen pro Umgebung für jedes Projekt ein. So wie:

SVN Root
|--> Project
  |--> Branches
    |--> RB-Development
    |--> RB-Staging
  |--> Trunk

Kofferraum ist unser Produktionscode.

Wir erstellen auch einen neuen Zweig für jedes Funktionssatz, an dem wir arbeiten. Wenn wir dann bereit zum Bereitstellen sind, verschmelzen wir sie mit der richtigen Umgebungszweig. Ein Build-Tool überwacht diese Umgebungszweige und automatischen Ablagerungen in den richtigen Zweig, wenn der Code begangen wird.

3) Mehrere Personen, die SVN verwenden - Erstellen Sie Zweige des Projekts für jeden vertikalen Funktionssatz, an dem Sie arbeiten. Für eine App für die Einkaufswagen -App verfügen Sie über Funktionen über den Kunden, die Produkte, die Bestellung usw.. Dies verringert die Anzahl der Personen, die gleichzeitig an derselben Filiale arbeiten. Fusionieren Sie dann den Code nach Bedarf zwischen diesen Zweigen und einander oder zu den Umgebungszweigen. Es klingt komplizierter als es wirklich ist.

Brunnen. Lassen Sie Ihre Konfiguration und Produktionskonfiguration für den Anwendungspeicher entwickeln. Dinge wie Datenbankzugriff und Pfade. Es gibt keinen Grund dafür, die gleichen Wege für verschiedene Server zu behalten (insbesondere wenn Sie Unix und Windows mischen)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top