私は現在、サードパーティの依存関係を管理するために Git サブモジュールを使用できることを期待して、Git サブモジュールがどのように機能するかを確認するテストを実行しています。
私のローカル テストでは、メインの Git リポジトリを含むフォルダーがあります。scripts
次に、GitHub リポジトリhttps://github.com/jrburke/requirejs/用に作成されたサブモジュールを含むサブフォルダーがあります
サブモジュールを最初にセットアップしたとき、明らかにそのサードパーティリポジトリ内のすべてのファイル/フォルダーを取得しましたが、私が興味を持った唯一のファイルはrequire.js
ファイル ( https://github.com/jrburke/requirejs/blob/master/ require.js ) すべての冗長なファイル/フォルダーを削除して変更をコミットし、RequireJs がコードに変更を加えるのを待ちました。
変更が発生したときにgit pull
編集したところ、変更されたすべてのファイルがプルダウンされたように見えますか? 私のレポでは、それらを削除済みとしてコミットしていましたが、サブモジュールは、変更されたファイルを明らかに望んでいなくても、関係なくプルダウンするようです。
それが問題の 1 です。2 番目の問題は、ファイルをもう一度削除してコミットすることですが、マージの問題のためにコミットできませんか? しかし、それらを削除したため、それらをマージできません! 以前にこれを見たことがありますが、解決策は特定の .git フォルダーに移動してファイルを削除して参照できないようにすることでしたが、これはサードパーティの依存関係を管理するための多くの作業のように思えますか?
git pull
リポジトリのクローンを作成し、不要なファイルを削除して、サードパーティのコードの更新について聞いたときに実行したいだけです。それを達成する方法はありますか?