2013-10-01 170 views
1

我有一個項目是這樣的:忽略GIT子模塊本地

main_module 
-folder 
--submodule_pub1 
--submodule_pub2 
--submodule_sec 

不是每個人都達到submodule_sec。有沒有辦法讓這個人檢查出main_module和所有公共子模塊,但刪除submodule_sec但只在本地?以某種方式標記它在本地保持不變?

我找到了這個答案:https://stackoverflow.com/a/1260982/337621 我的問題,我不想做一個提交,我不想有被刪除的子模塊作爲untracked更改。有沒有辦法做到這一點?上面的例子需要哪些命令?

回答

2

你可以試試,with recent git 1.8.3+,一:

git submodule deinit -- folder/submodule_sec 

git submodule man page

進一步呼籲Git的子模塊更新,git的子模塊的foreach和git子模塊同步將跳過所有未註冊的子模塊,直到他們再次初始化,

由於它取消註冊子模塊,因此將其從中刪除,這意味着它只是本地配置的本地修改:它不影響子模塊本身,它在工作樹和.gitmodules文件中都繼續由父回購庫引用。
但是git submodule update命令不會初始化並簽出一個只是deinit的子模塊。

+0

如何在Ubuntu上安裝它?包管理器中的最新版本是1.8.1。有沒有簡單的方法來安裝最新的? –

+1

@GáborLipták在Ubuntu上安裝最新的git的答案是在45分鐘前堆棧溢出;)http://stackoverflow.com/a/19109661/6309 – VonC

+0

謝謝。像它應該那樣工作。 –