11

私たちは git サブモジュールを調査してきましたが、.gitignore ファイルを使用して別のリポジトリ内にリポジトリを作成するのと比較して、サブモジュールを使用してリポジトリを作成することに (もしあれば) どんな利点があるのか​​疑問に思っています。

サブモジュールなしの例:

mkdir a
cd a
git init
touch test1.txt
echo "b" > .gitignore
git add .
git commit -m "Adding test1.txt and gitignore"

mkdir b
cd b
git init
touch test2.txt
git add .
git commit -m "Adding test2.txt"

git log
cd ..
git log
4

1 に答える 1

19

(サブモジュールの)gitの親は、コミット時にサブモジュールのブランチとタグIDを追跡します。これにより、(既知のバージョンで)親をチェックアウトするときに、サブモジュールにも適切なタグが含まれるようになります。

上記のように、それがたまたま無視されたサブディレクトリである場合、基本的に、これらはファイルシステム階層の一部ではないかのように、2つの独立したgitリポジトリです。

于 2009-09-22T21:36:33.813 に答える