2016-05-29 11 views
0

私のすべてのプロジェクトは同じ構造、基本ファイル(それぞれにはいくつかのコードが含まれています)を持っています。私は希望バージョン "他のプロジェクトで作業するための"スターターキット

もの:

  • バージョンのコード。
  • 他のプロジェクトでも使用してください。
  • これらのプロジェクトでは更新できます。
  • 各プロジェクトに固有のファイルにのみコードを追加します(既存のコードを削除または変更する必要はありません)。

私はいくつかの研究を行いました。パッケージにコードを追加したいので、パッケージマネージャを使用すると私のニーズに合わないでしょう。私はgitのサブモジュールとサブツリーを見つけ、後者は仕事をするようです。

あなたはどう思いますか?私はサブツリーを選んで正しい道を進んでいますか、それとも良い方法がありますか?完全に異なるソリューションを使用すべきですか?

おかげ人

[EDIT]

詳細に関する情報:

この "スターターキット" は、多少のフレームワークのようなものです。私は、他のプロジェクトでファイルを編集する必要はないが、制約を追加するような方法でビルドすることを検討しています。

  • 私はコードに取り組む必要があるため、サブモジュールが適合しないと思います。
  • 各プロジェクトには独自のレポが必要です。

答えて

0

マスターのgit repoを作成してクローンします。ベースファイルのさまざまなバリエーションに対して異なるブランチを持つことができます。

これはかなり基本的な使い方です。

+0

"スターターキット"レポで1つのブランチを作成することはお勧めできません。各プロジェクトには、複数の理由で独自のレポが必要です。 –

+0

@AndréaMaugarsはプロジェクトごとではなく、 "スケルトンのバリエーション"ごとに表示されます。 –

+0

そして私はあなたがすべてのプロジェクトを同じにするべきだとは言わなかった、repo @AndréaMaugars。私はあなたが "テンプレートレポ"をクローンしなければならないと言った。それは根本的に違います。 –

0

これはあまりにも複雑ですが、コードベースの似ているかどうか、そしてそれらが実際に異なるプロジェクトであるかどうかによって、ブランチを使用したり、共有コードで1つのリポジトリを作成してから複製したい場合(または、サブモジュール)を他のプロジェクトのレポに追加します。だからあなたの共有コードがsharedで、プロジェクトがfoobarの場合は、foobarに3つの別のリポジトリとクローン(またはサブモジュールの追加)sharedを作成します。これは実際にアップデートする頻度に依存しますsharedと別個の方法foobar

+0

'foo'と' bar'はまったく異なるプロジェクトかもしれませんが、それらは同じ構造とコードに基づいて構築されます。サブモジュールの理解は非常に限られています。私は各プロジェクトのサブモジュールを編集したいという事実は問題になると思います。 –

+0

フォークはいかがですか? – marisbest2

+0

フォークは良いアイデアかもしれません。この投稿を更新しようとします。 –

関連する問題