2012-01-24 8 views
0

私は現在、SubversionとtourtiseSVNを使用しています。理想的なコラボレーションリポジトリ設定をセットアップするにはどうすればよいですか?

私のWeb開発チームの仕組みを改良しようとしています。私たちは社内ウェブサイトの社内開発に取り組んでいます。私たちは外注しません。特定の製品の個別開発に携わっているチームメンバーの数を増やしたいと考えています。現時点では、私たちのセットアップでは、1人のメンバーだけがいつでも開発作業を行うことができます。これは、最終的に本番環境に追加されるソースリポジトリにコミットする前に、「ステージング」領域が不足しているためです。

私が達成したいことを実証するために、以下の図を含めました。まず、いくつかのdesciptions:

Dev Env X - これは、各無条件チームメンバーが働く場所です。リポジトリの完全なコピーで、ステージングやプロダクションにコミットされていないコードです。私たちには、生産に苦しんでいるバグ修正のための特別なものがいくつかあります。ステージングの必要がないので、これはネッセリーです。

開発X - これらは特定の領域のステージング領域です。私は、1つ以上の開発が同じ開発(つまり、新しいギャラリーモジュール)で動作することを可能にしたいと考えています。私は、このモデルが2人のメンバーが同じ開発とファイルで作業できること、ステージング領域でのコミットとテストを可能にすると信じています。 2人のチームメンバーによってすべてが完了したら、これはプロダクションリポジトリにコミットされます

プロダクション - これはライブプロダクションで使用されるコードのリポジトリです。

これはWeb開発チーム向けです。私は誰もがこれを設定する方法のヒントを与えることができるかどうか、もしSubversionが最高であるか、そこに良い再リポジトリがあるならば(Linux上で自己ホストを許可し、WindowsマシンがtoirtoiseSVNのように)。すべての開発は、Windowsマシンによってネットワーク経由でアクセスされるLinuxボックスで行われます。

Basic diagram of proposed model

答えて

3

ブランチを使用します。 「開発A」、「生産」、「開発B」は特定の支店です。共同作業する人は、同じブランチで作業します。準備が整った開発ブランチは、本番ブランチに統合されます。

上記は、ブランチがサポートされている限り、使用するVCSに関係なく機能します。

私の提案はSVNからの分岐を扱うことはそんなに苦痛なので、SVNから離れることです。私の好みはgitに行く。 gitに切り替えると、便利で痛いので、すべてのブランチを使いたいでしょう。

+0

現時点では、プロダクションはメインリポジトリ(トランク?)です。 Dev A、B、F、Eはこのレポジトリのチェックアウトです。私はそれらからブランチを作成しますか? – David

+0

新しい開発を開始するたびに、トランクからブランチを作成し、この開発ブランチをチェックアウトし、そのブランチで作業をコミットします。開発が終わったら、このブランチをトランクにマージします。 – adl

+0

私はそれが間違って使用している可能性があることを私は理解すると思う。現時点では、セントラルレポジトリとチェックアウト(ブランチではありません)の4つのディレクトリがあります。代わりに、これらは支店だったはずですか?それから私はそれらを個々の開発分野に分けますか?私たちは更新とコミットのみを扱っているので、ブランチングとマージは新しいものです。それは正しいと思いますか? – David

関連する問題