質問

複数の開発者のチームで、開発環境を設定する最良の方法は何ですか?

誰もがSharePointの完全なインストール、またはコンテンツデータベースを共有するか、他の何かを持っていますか?

役に立ちましたか?

解決

各開発者は、誰も共有していない独自の仮想マシンを持っている必要があります。

これは2つの目的です。まず、チームの残りの部分に対して中断されず、破壊的ではない作業を行うことができます。誰かがシステムをリセットしたり、利用できないようにすることを心配していません。第二に、他の人に影響を与えることなく、必要なものや必要なものを展開できます。たぶん、あなたはIEでFirefoxを使用することを好む(私はそうする)、それが持っているツールを使用することを好むかもしれません。先に進んで、VMにインストールしてください。たぶんあなたはあなたが試してみたいウェブパートに出くわします。インストールします。最良のことは、そのWebパーツをインストールする前に自分の個人的なスナップショットを取ることができることです。

いじりのすべてを行ってシステムを構築したら、それを機能としてパッケージ化し、それを共有テスト/ステージング環境に展開してから、生産に移動します。

唯一の要件は、開発者がVMからソース制御システムに接続していることです。これは、コードイン/アウトを確認できるようにし、継続的な統合を使用している場合、ビルドサーバーはコードのコピーを取得してビルドを更新できます。 VMで単独で作業している場合は、ロボコピースクリプトやSynctoyなどのツールなどのものを見て、VMの内容を外部ドライブに同期してコードをリポジトリに押し込んでください。

他のヒント

素晴らしい質問!これまでのところ、私たち全員がどのように同意しているかに驚いた。これは通常、人々をかなり分割できる主題です:-)

各開発者には、仮想サーバーインスタンスが必要です(HyperVまたはVMware、ローカルでホストまたは共有)。データベースは共有できますが、各開発者は独自のデータベースインスタンスを持っています(VPNを使用してリモートで共有環境を使用することは実行可能ですが、多くの場合、開発プロセスを減速させるため、可能であれば避ける必要があります)。

いくつかのプロジェクトに関与する場合、各プロジェクトには、各開発者に専用の仮想サーバーセットが必要です。

また、私が望むことでできる地元の「POCサイト」も持っているのが好きです。プロジェクト開発サーバーではしない小さなテストなどを行うために使用します。乱雑すぎると、スナップショットをいつでもリロードできます。

「それが私の箱で働いた」問題を避けるために、開発方法に関するガイドラインがあるはずです。開発中にボックスに最も少ない特権を持っているなど、特に通常のWebパーツの開発などを行うときに訪問者の許可のみがあるように。

開発サーバーは、同じゴールデンイメージによって作成され、DEVテスト、統合テスト、PRE PROD、PRODサーバーと同じ(できればスクリプト化された)ゼロポイント構成によって作成する必要があります。これにより、開発者サーバーの特別な構成またはソフトウェアの問題により、開発テストの問題が最小限に抑えられます。毎週すべての仮想開発者サーバーを削除し、サーバーのスナップショット(PowerShellで自動化された)を展開する開発者チーム(Ben Robbなど)を知っています。 。

多くの場合、見落とされがちなのは、特に大規模なチームでは、命名がどのようにあるべきか(例えば、rootフォルダーのサブフォルダー(必要に応じて12hive)の名前空間の使用方法など)のガイドラインが必要です。何を使用してください)、ライブラリのような一般的なユーティリティの使用。スタートアップの前にこれをクリアしなかったため、道路に沿って悲しみを引き起こし、チーム全体で再利用されるはずのコードの小さな島(または図書館が十分に一般的である場合はプロジェック全体)を持つリスクを高めます。

私の考えは、誰もがすべてのコピーを持っているべきだということです。データベース、アプリケーションプール、サーバーを共有すると、より多くの間違いを犯すか、誤解を招くだけです。デバッグは、共有リソースを使用して本当に厄介で非生産的であり、データベースロックなどについて考えてください

開発者の準備ができたら、機能はテスト/ステージング環境に移動され、共有されます。開発者は、必要に応じて、実際のデータを取得するために必要に応じて、テスト/ステージENVを開発ENVにコピーできます。

開発者に独自のVMに強制的に、チームメンバーに展開可能なコードを自分のVMで作成するように強制します。

多くの組織は、さまざまなコンテンツデータベースとSQLサーバーを共有し、各開発者向けのSharePointおよびVisual Studioなどを備えた個々のVMを持っています。多くの場合、これらのVMは、メモリの要件などにより、開発者ワークステーションではなく、共有仮想ホストで実際にホストされています。

@spdevwiki's SharePoint開発環境の構築 これについて。

ライセンス: CC-BY-SA帰属
所属していません sharepoint.stackexchange
scroll top