git - 本地忽略 GIT 子模块

标签 git git-submodules

我有一个这样的项目:

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

来自git submodule man page :

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/

相关文章:

git - 使用 GIT 进行软件版本编号

xcode - 如何将子项目工作副本添加到 Xcode 5 中的工作区?

git - 如何初始化嵌套在子树中的子模块?

git - 如何在所有提交中更新子模块 url

eclipse - 从 git 存储库 check out Maven 项目

git - 将子目录分离(移动)到单独的 Git 存储库中

c# - .gitignore 和 Visual Studio 项目 : Ignore bin/Debug directory but not bin/Release directory

git - 无法将提交推送到中央存储库

大型资源的 Git 子树或 Git Sub 模块?

ruby-on-rails - 在两个 Rails 项目之间共享模型 - 使用 git 子模块?