git submoduleについて

他のリポジトリを埋め込むgit submoduleですが、癖が強くて使いづらいと評判です。

この機能、メインのプロジェクト→あるリポジトリの特定のコミットを参照という構造をしているようです。また、その性質上、メインのプロジェクトは参照しているコミットを記録しているだけで、submoduleに相当するリポジトリのデータそのものは持っていません。

しかし、submoduleはリポジトリなので本来はその下にデータを持っており、かつそのデータを利用することが目的となるわけです。

そこで、単なる参照からデータを引っ張り出してくるという仕組みが必要で、それがgit submodule XXXという形式の操作に含まれるわけです。

例えば、

  • git submodule init: 単なる参照にすぎないsubmoduleにファイルの実体をクローンしてくる
  • git submodule update: submoduleを配置したディレクトリ内にあるファイル実体を参照にあわせる

ということになります。

参考

AWSを利用した導入事例のご紹介

実際に構築を行ったAWSの事例を紹介しています。導入の目的に近い事例をご覧いただくと、実際の構成例やメリット、注意点などが把握できます。

ブックオフコーポレーション株式会社様
第一生命保険株式会社様
株式会社電通様
株式会社LIFULL様
株式会社リブセンス様
TBSアナウンス部様
明治大学様
拓殖大学様