2009-11-30 11 views
11

私はSubversionに慣れ親しんでおり、どのように開発からステージング、そしてプロダクションに移行したのでしょうか?Subversionからウェブサイトを導入する

私は、リリース用ブランチを作成するという概念をdetailed hereと把握しています。しかし、私は実際にブランチをどのように展開しますか?

理想的には、私はちょうど新しいウェブサイトを設定し、ブランチからファイルをコピーすることができますが、私はあらゆるsvnバインディングをプロダクションにコピーすることに懸念しています。

これはVisual Studio Webサイトプロジェクトで、Visual Studioと統合するためにVisualSVNサーバー、TortoiseSVNおよびAnkhを使用しています。

答えて

11

svn export

あなたはsvn exportをしたいすべての転覆嫌なもの

-2

あなたのビルドシステムには、.svnという名前のフォルダを無視する何らかの種類の '展開'ターゲットが必要です.svn - thatsのすべてのsubversion情報が存在します。

4

除くファイルをエクスポートします。 .svnディレクトリがないコードをエクスポートします。

3

別のブランチで開発しない限り、私はただtagを使ってリリースをマークします。

svn exportそのタグを使用して、すべての余分な.svnフォルダを持たないようにします。

5

ここでは欠点があります。基本的には、テストとプロダクションに展開するために単独のSubversionを使用しないでください。あなたの最善の策は、Subversionからビルドを引き出す何らかの種類のスクリプトを使用することです(svn exportを使用する場合はSubversionファイルフックを持たない)、必要なファイルをビルドし(MSBuildを使用してスクリプト化する)、不要なファイル(あなたが作成したので、.aspx.csファイルなど)をコピーして、自分の環境にコピーします。

ローカルでは、powershellを使用して、コマンドラインからsvnコマンドライン、MSBuild、およびnUnitの組み合わせをすべて結合し、ビルドを行います。

+1

優秀なポイントジョン - それは非常に簡単なセットアップでない限り、単純な "輸出"以上のものが必要になる可能性があります。あなたが記述する "プル"タイプの操作(スクリプトがsvnエクスポートをトリガーする場所)に加えて、リポジトリに配置された "デプロイ"スクリプトも見たことがあります。私。更新プロセスは、1)エクスポートを実行します。 2)デプロイスクリプトを実行します(通常は対話モードで動作します)。あるケースでは、実際には「展開」ページでした。 –

+0

これは良い点ですが、実際には簡単な設定です。過度に複雑にする必要はありません。 – plntxt

0

私が扱うのは、ビルドツール(ant + ivyやmavenなど)を使用して、Subversionからコードをチェックし、アーティファクトを構築し、必要な場所にデプロイするプロセスを自動化することです。

私はJava側でより多くの作業を行います.netツールに精通していないので、おそらくnmavenを使用できますか?

0

古いスレッドですが、これはSVNがプロジェクトのルートにある単一の.svnファイルしか持たないため少し変更されましたか?また、.svnリクエストを無視するようにApacheを設定して、このように展開するのがより現実的です。

関連する問題