7

大きなsvnレポをgitに移行し、gitflowを使い始めました。それは魅力的なように機能しましたが、今ではその大きなレポをいくつかの小さなものに分割することを考えています。gitサブツリーでgitフローを使う

のは、次のようにレポディレクトリツリーがあるsupposseてみましょう:

/repo 
    - libs 
    - apps 
    -- app 1 
    -- app 2 

そして、我々は3つのレポ取引、コア構造(LIBSおよびアプリケーションディレクトリ)およびアプリケーション・ディレクトリと他の2と1に分割したいです。

git subtreeを使って分割すると、git flowを各部分で個別に使うことができますか、それともグローバルに使う必要がありますか?

PS:これはstackoverflowの中に私の最初の質問で、親切にしてください:)

答えて

5

私はgitのフローを使用していないが、私は答えはあなたがどのようにモジュラーに依存主張するだろう。 app1とapp2をデプロイせずにコア構造をデプロイできますか? app1とapp2を互いに独立して配備できますか?デベロッパーチームは独立したワークフローとして扱うには十分に大きく、洗練されていますか?

これらの質問に対する答えが「はい」の場合、私はそれらをそれぞれ独自のフローを持つ複数のプロジェクトとして扱うと主張します。いずれかの回答が「いいえ」の場合、プロジェクトを破ることはありません。実際、app1とapp2を変更するとコアリポジトリへの変更がほとんど必要になる場合は、リポジトリの破損を避けることができます。

ネストされたリポジトリは、サブツリー、サブモジュール、または(神格禁止)で実行されるかどうかにかかわらず、定義によってちょうど.gitignoreとなり、ワークフローがより複雑になります。 git bisectgit logのようなコマンドは、あまり役に立ちません。追跡履歴とバグは少し難しくなります。新しい開発者は、コーディングを開始するためにちょっとだけ学ぶ必要があります。個人的な経験から:この道を慎重に歩いてください。あなたのサブレポジスが大きく絡み合っている場合、問題のあるPay It Forwardのようなプロジェクトを破壊しようとしている誰かのために、この答えを書く年にここに戻ります。

+0

ありがとうございました!それはたくさんの助けになりました! – algm

+0

破損したリポジトリと全体のリポジトリの考え:http://programmers.stackexchange.com/a/161324/57052 – Christopher

関連する問題