私はGitリポジトリを持っています。このリポジトリには、core_code
というディレクトリがあります。このディレクトリには、共通ライブラリなどのいくつかのソフトウェアで使用される共通のコードが含まれています。 program_alpha
とprogram_beta
という2つの異なるソフトウェアが含まれていますが、関連するディレクトリもあります。 program_alpha
とprogram_beta
の両方は、機能するためにcore_code
に依存しています。ソフトウェアを実行するときは、core_code
をプログラムディレクトリに置く必要があります。したがって、私がソフトウェアを実行しているときには、program_alpha
とprogram_beta
の両方がcore_code
のコピーを持っている必要があります(アプリケーション固有の理由で、core_code
はプログラムのルートになければならず、どこかから参照できません)。Gitリポジトリの複数のディレクトリで同じコードを使用する
だから、私はprogram_*
のディレクトリにすべてcore_code
というディレクトリを用意していますが、複製することはありません。当初は、program_*
ディレクトリにあるcore_code
ディレクトリを指し示すシンボリックリンクを持っていましたが、私はクロスプラットフォームのコードを使用していますし、GitはWindowsのシンボリックリンクをまったく受け付けていません。このコードをすべて同じリポジトリに保存する必要がありますので、core_code
のリポジトリを別に作成してから、サブモジュールをprogram_*
ディレクトリに使用することはできません。
これを行う最善の方法はありますか?シンボリックリンクがGitでうまく機能していれば、とても簡単です。