質問

私は、完全なWeb開発環境をセットアップしています。 現在、2人の開発者がいます。1人はバックエンドプログラミング専用(C#、. NET)、もう1人はフロントエンド開発専用(HTML、CSS、XSLT)です。

それぞれに、MS Visual Studio 2008とVisual Source Safe 2005を介した共有ソースがインストールされています。これらは、ファイルをチェックアウトし、ローカルで開発します。

テストサーバーをセットアップしました。このサーバーでは、マージおよびテストされたコードが最終的に終了し、そのサーバーは常に<!> quot; correct <!> quot;になるはずです。バージョン。

3つのインストールのそれぞれが同じデータベースを共有します。

私はより多くの開発者を準備しているので、このセットアップは少し拡張されると思いますが、ファイルの同期と迅速な変更のための簡単なアクセスには非常に多くの問題があります。 多くの場合、いくつかのレイアウトとデザインを非常に迅速に変更し、最終的にファイルをテストサーバーに手動でコピーする必要があります(Webサーバーに.NET / C#コードファイルは必要ありません)。サイトは失敗します:-(

標準CMSを使用してすべてのフロントエンド作業を構築します。これがソースセーフに含まれていると、処理速度が大幅に低下します。

フロントエンドのすべての作業をバックエンドコードから完全に分離しておくと、変更が簡単になります。

たとえば.NETコードを考慮することなく、設計にいくつかの変更を加えて、すぐに運用環境に展開したいと考えています。

不足しているものはありますか、またはWeb開発環境をセットアップするためのベストプラクティスは何ですか?

いくつかのヘルプ/経験を楽しみにしています:-)

/トーマス

役に立ちましたか?

解決

おそらく、より対応可能なバージョン管理システムを検討する必要があります。 SVNは優れたツールをサポートしています( AnkhSVN および VS2008統合用VisualSVN )、およびMercurial、Git、Bazaarなどの分散バージョン管理システムにより、さらに多くのオプションと、より基本的なツールサポートの価格が提供されます。

簡単な分岐が必要な場合があります。バージョン管理システムを使用した関連リソースの管理は、本番環境に簡単に展開できる場合(つまり、<!> quot; svn up <!> quot;を実行する)により簡単になります。

他のヒント

CMSコンテンツの処理方法に関する情報は提供できませんが、いくつかのビルドサーバーをセットアップまたは使用しました。

多くのプロジェクトでVisual Source Safeを使用し、一部のプロジェクトでTeam Foundation Serverを使用したことがあります。可能な場合は使用しないでください。

最近のbuildserverは、SubversionリポジトリからソースをチェックアウトするNantスクリプトで構成されています。ビルド自体はMSBuildによって実行されます。ビルドの結果は、ステージングとプロダクションにコピーされます。

データベースの変更を開発からステージングおよびプロダクションに簡単に転送する方法が必要です。 dev-のスクリプトを作成するツール( http://www.codeplex.com/ScriptDB )データベース。結果はSubversionにチェックインされます。 Subversionのログで何が変更されたかを簡単に確認できます。

  

3つのインストールのそれぞれが同じデータベースを共有します。

これは悪い判断のようです。 dev1、dev2、およびtestがすべて同じデータベースを使用している場合、dev1およびdev2に干渉することなくdev1がスキーマを変更する実験を行うことができます(実験スキーマを操作するコードがまだチェックインされていないことを前提としています)。

また、DBは単一障害点となるため、誰かが誤って重要なテーブルを削除/切り捨てると、すべての作業が停止してしまいます。

理想的には、各環境には独自のDBが必要です。 Oracleのような非フリーDBを使用している場合、各環境に独自のサーバーを提供する余裕はないかもしれませんが、少なくとも各環境には独自のスキーマが必要です。

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