2017-08-29 29 views
0

如何在克隆存儲庫期間將git配置爲使用--recurse-submodules參數?配置git以在克隆存儲庫時使用--recurse子模塊

我知道我可以用不同的名稱

proper-clone = clone --recurse-submodules

創建別名,但我想用git clone URL-to-repository,不git proper-clone URL-to-repository保持。

我試着設置別名

clone-base = clone clone = clone-base --recurse-submodules

,但它未能改變混帳行爲

+0

Git別名總是依賴像(push,clone)這樣的管道命令,因此它們不能被覆蓋。 –

回答

2

我不相信這是可能的。您可以配置獲取(和拉)默認情況下遞歸,但不是克隆的特定選項:(

您也不能用「別名」覆蓋命令,所以你不能改變「git克隆「,但你可以,如你所說,做一個」git myclone「的別名。

唯一的另一個建議,我能想到的是在bash中別名(如果你使用Linux) - 你可以別名」git「使用你自己的叫做「git」的腳本,並在你安裝真正的git之前把它添加到你的路徑中,你的腳本可以做下面的工作來捕獲任何「克隆」,並在那個腳本中插入「--recurse-submodules」。

+0

'您可以配置獲取(並拉)默認情況下遞歸,但不克隆這個特定選項現在我想知道任何有關git問題跟蹤器的功能請求。 –

+1

@MateuszKonieczny它可能是,我沒看......但在git中的命令有很多參數我不知道他們是否會一直添加一個配置參數,或者如果他們應該只是支持可配置的所有參數的默認值 - 不知道要花多少努力...... :) –

0

別名不是遞歸的(別名只是exp相與一次),所以這個別名應該工作:

clone = clone --recurse-submodules 

或者您也可以通過外殼跳:

clone = !exec /usr/lib/git-core/git-clone --recurse-submodules 

請注意,使用git-clone,而不是直接git clone因爲在這種情況下,別名遞歸,您可以輕鬆創建一個無限循環。