はじめに Gitは.gitフォルダにてメタデータをすべて取り扱うため、タイトルのように、ワーキングツリーを入れ子にできるのかな?と思って実験してみたらできたのでこの記事を書いています。 図にするとこんな感じ *1 一つめのワーキングツリーが青色のところだとして、さらに二つ目のワーキングツリーが一つ目のワーキングツリーの内部のどこか(図では赤色のところ)にあるような構造となります。 動き 入れ子のワーキングツリー(赤色)内部のどこかでGitコマンドを使うと、入れ子のワーキングツリーのルート部分の.gitが利用されます。 親のワーキングツリー(青色)のどこかでGitコマンドを使うと、親のワーキングツリーのルート部分の.gitが利用されます。 入れ子のワーキングツリーでファイルを編集してコミットした場合でも、親のワーキングツリーではまだコミットされていない状態であるので別途コミットする必要あり。
![Gitではワーキングツリーを入れ子にできるようです - No Programming, No Life](https://cdn-ak-scissors.b.st-hatena.com/image/square/b88f9eac33f0cafa67f6092fc27f1f2b58a69e93/height=288;version=1;width=512/http%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Ff%2Ffumokmm%2F20101025%2F20101025020151.png)