私のスクリプトでは、自分のリポジトリを持っているライブラリ(私のライブラリまたは他のライブラリ)をよく使用します。リポジトリ内でそれらを複製し、新しいバージョンがリリースされるたびにそれらを更新することに固執したくありません。ただし、誰かがレポを複製しても、ローカルで機能し、リンクが壊れていません。
私が何ができるかについてのアイデアはありますか?
これは、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
もう一度。