回答:
gitのサブモジュールでこれを行うことができます。リポジトリで、次の操作を行います。
git submodule add path_to_repo path_where_you_want_it
したがって、ライブラリのリポジトリのURLがgit://github.com/example/some_lib.git
あり、それをlib/some_lib
プロジェクトで使用したい場合は、次のように入力します。
git submodule add git://github.com/example/some_lib.git lib/some_lib
これは、リポジトリの最上位ディレクトリから行う必要があることに注意してください。したがってcd
、最初に配置するディレクトリに移動しないでください。
サブモジュールを追加した後、または誰かがリポジトリを新たにチェックアウトするたびに、次のことを行う必要があります。
git submodule init
git submodule update
そして、追加したすべてのサブモジュールは、同じリビジョンでチェックアウトされます。
ライブラリのいずれかの新しいバージョンに更新する場合はcd
、サブモジュールに移動して以下をプルします。
cd lib/some_lib
git pull
次に、変更git status
を加えるlib/somelib
と、変更されたセクションにリストが表示されます。そのファイルを追加してコミットすれば、最新の状態になります。コラボレーターがそのコミットをリポジトリーにプルすると、再度lib/somelib
実行されるまで変更されたものとして表示されますgit submodule update
。
git submodule update --remote
、より複雑なプロジェクトではより多くのフラグを使用することをお勧めします。私が使用するgit submodule update --remote --recursive --init