2016-07-06 4 views
3

私はマイクロサービス( 'A'、 'B'、..)ごとにリポジトリを用意しています。リポジトリの構造は次のようになります。これらのリポジトリの全てがというプロジェクトに属しているので1つのリポジトリにリポジトリを維持する方法

A 
|-dockerfile 
|-src 
    |-Java 
    |-Groovy 

「WholeProject」、私はリポジトリを維持したい「WholeProject」のように見えた:だから

WholeProject 
|-docker-compose.yml 
|-µS 
    |-A 
    |-B 
    |-.. 

私はドッカーの作成ファイルとプロジェクトに関するすべての重要なことを含むリポジトリを簡単に維持することができました。

これは良い考えですか?私はそれをどのように行うことができますか?あなたがでgit submodulesを使用して検討することもでき

+0

[サブモジュール](https://git-scm.com/book/en/v2/Git-Tools-Submodules)? – Siguza

答えて

1

cd /path/to/WholeProject 
git submodule -- /url/to/repo/A µS/A 
git submodule -- /url/to/repo/B µS/B 

そのように、あなたがWholeProjectのクローンを作成することができます

git clone --recursive 

そして、あなたは彼らの最後に記録されたSHA1でABを取得します。

+0

ありがとう!それは動作し、それは私の質問に答えます。しかし、私はそれが良いアイデアか、それとももっと良い戦略が適用されるのかと疑問に思っています。 – DouglasAdams

+0

@DouglasAdamsモノレポが必要な場合の代替方法は、サブツリーです:http://blogs.atlassian.com/2013/05/alternatives-to-git-submodule-git-subtree/ https://developer.atlassian.com/blog/2015/05/the-git-subtree /(ただし、AとBのライフサイクルが異なる場合は、ブランチとタグが異なるため、サブモジュールの方が適しています) – VonC

関連する問題