Frage

Wie kann in einem Team mehrerer Entwickler die Entwicklungsumgebung am besten einrichten?

Hat jeder seine eigene vollständige Installation von SharePoint oder Freigabe von Inhaltsdatenbanken oder etwas anderes?

War es hilfreich?

Lösung

Jeder Entwickler muss eine eigene virtuelle Maschine haben, die niemand teilt.

Dies ist für zwei Zwecke. Zunächst können Sie für den Rest des Teams ununterbrochen und nicht disruptiv arbeiten. Sie machen sich keine Sorgen, dass jemand das System zurücksetzt oder es Ihnen nicht verfügbar macht. Zweitens können Sie das bereitstellen, was Sie wollen oder benötigen, ohne andere zu beeinflussen. Vielleicht verwenden Sie es vor, Firefox über IE (ich tue) und die Werkzeuge zu verwenden, die es hat. Installieren Sie sie in Ihrer VM. Vielleicht stoßen Sie auf einen Web -Teil, den Sie ausprobieren möchten. Es installieren. Das Beste ist, dass Sie Ihren persönlichen Schnappschuss vor dem Installieren dieses Webparts aufnehmen können. Wenn die Dinge nach Süden gehen, können Sie einfach in die vorherige Version zurückkehren.

Sobald Sie Ihr ganzes Durcheinander gemacht und Ihr System erstellt haben, verpacken Sie es als Funktion und setzen Sie es in einer gemeinsam genutzten Test-/Staging -Umgebung ein, bevor Sie es auf die Produktion verschieben.

Die einzige Anforderung ist, dass Ihre Entwickler eine Verbindung von ihrer VM zu Ihrem Quellvertretungssystem haben. Dies ist so, dass sie den Code ein-/out überprüfen können. Wenn Sie eine kontinuierliche Integration verwenden, kann Ihr Build -Server eine Kopie des Codes schnappen und den Build aktualisieren. Wenn Sie in Ihrem VM isoliert arbeiten, schauen Sie sich etwas wie ein RoboCopy -Skript oder ein Synctoy oder ein ähnliches Tool an, um den Inhalt Ihres VM mit einem externen Laufwerk zu synchronisieren, das Ihren Code in das Repository drückt.

Andere Tipps

Tolle Frage! Überrascht, wie wir alle bisher zustimmen scheinen. Dies ist üblicherweise ein Thema, das die Menschen ziemlich viel teilen kann :-)

Jeder Entwickler sollte eine virtuelle Serverinstanz haben (sei es Hyperv oder VMware, lokal gehostet oder freigegeben). Die Datenbank kann gemeinsam genutzt werden, aber jeder Entwickler verfügt über eine eigene Datenbankinstanz (die Verwendung von gemeinsam genutzten Umgebungen, die aus der Ferne mit VPN unter Verwendung von VPN machbar sind, aber häufig die Entwicklungsprozess verlangsamt und daher nach Möglichkeit vermieden werden sollte).

In mehreren Projekten sollte jedes Projekt für jeden Entwickler eine dedizierte Reihe von virtuellen Servern haben.

Ich habe auch gerne eine lokale "POC -Site", die ich mit dem machen kann, was ich will. Ich benutze es für kleine Tests und Sachen, die ich auf meinem Projektentwicklungsserver nicht machen würde. Wenn es zu chaotisch wird, kann ich immer einen Schnappschuss neu laden.

Um zu vermeiden, dass "es in meinen Box -Problemen funktioniert hat", sollten Richtlinien zur Entwicklung bestehen. Wie die am wenigsten möglichen Privilegien auf der Box während der Entwicklung und insbesondere nur Besucherberechtigungen bei normaler Web -Teil -Entwicklung oder ähnlicher.

Entwicklungsserver sollten durch das gleiche goldene Bild und die gleiche (vorzugsweise geschriebene) Nullpunktkonfiguration als Dev -Test-, Integrationstest-, Pre -ProD- und Prod -Server erstellt werden. Dies minimiert Probleme im Dev -Test aufgrund spezieller Konfigurations- oder Softwareprobleme auf dem Entwicklerserver. Ich kenne sogar Entwicklerteams (z. .

Oft übersehen ist es, dass Sie insbesondere für größere Teams Richtlinien für die Benennung (z. Verwenden Sie was), Verwendung gemeinsamer Dienstprogramme wie Bibliotheken. Wenn Sie dies nicht vor dem Start geklärt haben, werden Sie auf der Straße Trauer auf der Straße gelegt und das Risiko erhöht, kleine Codeinseln zu haben, die im gesamten Team wiederverwendet werden sollten (oder sogar über Projekte, wenn die Bibliotheken gut und generisch genug sind).

Meine Einstellung ist, dass jeder seine eigene Kopie von allem haben sollte. Das Teilen von Datenbanken, Anwendungspools, Servern macht Sie nur mehr Fehler oder haben Missverständnisse. Debugging ist wirklich unangenehm und unproduktiv mithilfe gemeinsamer Ressourcen und denken Sie über Datenbankschlösser usw. nach usw.

Sobald die Entwickler bereit sind, werden die Funktionen in eine geteilte Test-/Staging -Umgebung verschoben. Entwickler können die Test-/Bühnen -Umgebung bei Bedarf in ihre Entwicklungsumgebung kopieren, um echte Daten zu erhalten.

Die Forderung von Entwicklern, ihre eigene VM zu haben, zwingt sie, Code zu schreiben, der in ihren eigenen VMs für das Team Membes eingesetzt werden kann ;-) Es ist eine listige Verkleidung für ein großartiges Endergebnis!

Viele Organisationen teilen einen SQL -Server mit verschiedenen Inhaltsdatenbanken und verfügen über individuelle VMs mit SharePoint und Visual Studio usw. für jeden Entwickler. Oft werden diese VMs tatsächlich auf einem gemeinsam genutzten Virtualisierungs -Host und nicht auf Entwicklern -Arbeitsstationen aufgrund von Speicheranforderungen usw. gehostet usw.

Die @spdevwiki's Aufbau einer SharePoint -Entwicklungsumgebung Darauf.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit sharepoint.stackexchange
scroll top