我有一个这样的项目:
main_module
-folder
--submodule_pub1
--submodule_pub2
--submodule_sec
并不是每个人都能达到submodule_sec
。有没有办法让这些人检查 main_module
和所有公共(public)子模块,但仅在本地删除 submodule_sec
?以某种方式将其标记为本地不变?
我找到了这个答案:https://stackoverflow.com/a/1260982/337621 我的问题是,我不想进行提交,并且我不想将已删除的子模块作为未跟踪的更改。有没有办法做到这一点?上面的示例需要哪些命令?
最佳答案
你可以试试,with recent git 1.8.3+ ,一个:
git submodule deinit -- folder/submodule_sec
Further calls to git submodule update, git submodule foreach and git submodule sync will skip any unregistered submodules until they are initialized again,
由于它取消注册子模块,并将其从 .git/config 文件中删除
,这意味着它只是本地配置的本地修改:它不影响子模块本身,子模块继续被父存储库引用,无论是在工作树还是在 .gitmodules
文件中。
但是 git submodule update
命令不会初始化和 checkout 您刚刚deinit
的子模块。
关于git - 本地忽略 GIT 子模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19109770/