問題は、Mercurialまたはgitを開発のフロントエンドとして使用できるようにすることですが、通常は統合のSubversionでチェンジセットと更新を行いますブランチ、またはMercurialのスクリプトによってのみ書き込まれるもの、または変更が通知されたときにはHudsonによって書き込まれます。 SVNを使用している他の開発者が行った変更でMercurialリポジトリが更新され、新しい開発バージョンなどを提供する前に、変更を取り込んでそれらを統合して変更をテストします。開発チーム向けにSVNを使用したGIT/Mercurial Crossover
次のシナリオが可能であれば、マージする開発チーム&分岐?それとももっと良い方法があれば...強力な人を武装させるだけでなく、ひとつのツールを使うことができるのですか?
次の戦略は、以下のコンポーネントから構成されている:
は以下の構成で Mercurialのと
- SVN SVNの
- 1対1クローン更新は、通常、SVN/trunkからクローン(hgsubversion)にプルされます。クローンは読み取り専用で、定期的に変更を取り込むスクリプトを持っています。クローンは、開発リポジトリにクローンされます。これは読み書き可能です(これは通常のMercurial Repoです)。開発者がこの開発者リポジトリに変更を加えると、統合ブランチにある要素がSVN/integrationブランチにプッシュされます。このブランチは、自動化されたスクリプトによってのみコミットされます。 svnを使用する他の開発者が変更をSVNのトランクにプッシュするだけであれば、クローンに引き込んでMercurialの環境内でマージすることができます。欠点は、変更が発生したSVNレベルでの可視性を失うことです。 DVCSを使用して上のコースで
[[[[ trunk [[[[[[[[[[[[[[[[[[[[[[[[ SVN ]]]]]]]]]]]] branch/integration ]]]]]]]]]]]]]]]]]] | ^ | | | | v | SVN - Mercurial Clone | | | | | | | v | Mercurial - Development ---------------------------- Branch - Integration
私は開発のフロントエンドで言及する必要があります、私はすでにhgsubversionを使用しています。しかし、私はチームベースの分散開発を利用できるようにしたいと考えています。 – Gary
私は個人的に強烈なアプローチが好きです:)とMercurialの使用法は、SVNと非常によく似ています。 – erjiang