0
Linux有很多git倉庫,用於here列出的不同模塊。 developers也有儲存庫。但是,Linus如何合併所有這些存儲庫並創建一個像this這樣的單個內核存儲庫?例如,他是否將子模塊標記爲所有相關的存儲庫或什麼?用另一個倉庫管理git倉庫
Linux有很多git倉庫,用於here列出的不同模塊。 developers也有儲存庫。但是,Linus如何合併所有這些存儲庫並創建一個像this這樣的單個內核存儲庫?例如,他是否將子模塊標記爲所有相關的存儲庫或什麼?用另一個倉庫管理git倉庫
git
認爲相反的方式:不生成「主」存儲庫,而是生成稱爲submodules
的「子」存儲庫。
說,你已經被位於兩個git
庫:
foo.bar/baz
quix.qu/foobar
然後你就可以初始化父git倉庫(例如在parent
):
git init .
,並添加子模塊:
git submodule add foo.bar/baz
git submodule add quix.qu/foobar
它會創建baz
和foobar
目錄,並在那裏初始化適當的git存儲庫。得到的tree
因此是這樣的:
parent
├── baz
│ ├── content of baz
│ └── other content of baz
└── foobar
子模塊因此什麼是無版本的文件系統的鏈接(快捷方式)。如果項目的一部分傾向於「按照自己的方式」並且提交不再是全局的,但是您想承諾僅捕獲例如plugins
目錄,則它們非常有用。
所以Linus這樣做,對吧?我的意思是使用子模塊。 – 2014-10-28 17:48:43
在你的git環境中引入子模塊之前要考慮兩次。 – 2016-08-06 12:10:09