2017-12-08 12 views
0

1つのSubversionリポジトリに20のプロジェクトがあります。これらのプロジェクトを異なるリポジトリに分けます。 (すべてのプロジェクトは互いに独立しています)。この方法はベストプラクティスですか?だからこのように:プロジェクトごとに新しいリポジトリを作成することをお勧めしますか?

repository1 
    --> trunk 
    --> branches 

    repository2 
    --> trunk 
    --> branches 

    repository3 
    --> trunk 
    --> branches 

    repository4 
    --> trunk 
    --> branches 

すべてのプロジェクトには独自のリポジトリが必要ですか?右?

+0

このファイルの外観は現時点で同じリポジトリ内でのみ可能です – royalTS

+0

*リポジトリ*の意味によって異なります。単一のリポジトリには、多くのプロジェクトとモジュールがあなたの質問に記載されている構造に含まれていることがよくあります。 [このリンク](http://svnbook.red-bean.com/nightly/en/svn.tour.importing.html#svn.tour.importing.layout)を参照してください。 –

+0

プロジェクトの専用レポを持つ場合、依存関係や共有プロジェクトを管理するのは難しいでしょう。単一のリポジトリを使用する方が効果的です。個々のレポを持つ具体的な理由は何ですか? – saurabh14292

答えて

1

開発環境や状況によって異なります。

私の仕事で私が個人的に経験したことは、全く別のプロジェクト(プロジェクトに依存しないもの)のための異なるリポジトリのサブセットです。しかし、多くのコンポーネントを持つプロジェクトを開発する場合は、「サブモジュール」タイプのディレクトリ構造も使用します。

は例えば、我々はコアプロジェクトがあるでしょう:

repository1 
    --> trunk 
    --> branches 

を含むすべてのプロジェクトがこのリポジトリを使用することができる機能のセットを表す。このレポ。他のリポジトリに依存しない。

しかし、私はコンポーネントの束を開発するために使用する別のリポジトリを持っています。

repository2 
    module1 
     --> trunk 
     --> branches 

    module2 
     --> trunk 
     --> branches 

    module3 
     --> trunk 
     --> branches 

    module4 
     --> trunk 
     --> branches 

    module5 
     --> trunk 
     --> branches 

    MyModules 

    YourModules 

私がこのアプローチを使用する理由は、これらのモジュールを互いに使用できる/使用するためです。たとえば、開発者Aは新しいモジュールmod4を使用してMyModulesの内部で作業することができます。新しいモジュールを稼働させるには、externalをモジュール1と3に使用する必要があります。開発者Bは、新しいモジュールでも使用できます。モジュール5はYourModulesの中にあります。しかし、モジュール2と3が必要です。

この方法で外観を使用すると、ユーザーは基本的にチェックアウトフォルダ(MyModulesとYourModules)を設定できます。したがって、開発者AがMyModuleをチェックアウトすると、モジュール1,3、および4がそれぞれチェックアウトされます。開発者Bも同様に2,3、および5でYourModuleをチェックアウトします。モジュール1,2および3のベースディレクトリは、互いに別々のサブプロジェクトである。

私はそれがちょっとばかげていたことは知っていますが、問題の両方の方法でケースの使い方を伝えるのを手伝ってくれることを願っています。 :)

関連する問題