Git子模块添加:“在本地找到git目录”的问题

Justrajdeep

嗨,您对Git子模块中讨论的问题有一个后续问题:“在本地找到git目录”问题

我有很多这样的子模块目录(不确定多少)

是否可以以某种方式初始化.gitmodules中列出的所有子模块并强制拉动它们。

另外,我想重置所有子模块并放弃本地存在的所有更改。

谢谢 :)

幼虫

是否可以以某种方式初始化.gitmodules中列出的所有子模块并强制拉动它们。

您可以删除所有子模块目录,然后重新运行git submodule update可能是这样的:

git config -f .gitmodules --list | 
  awk -F= '$1 ~ /.path$/ {print $2}' | 
  xargs rm -rf

这用于git config列出中的配置.gitmodules,生成如下所示的输出:

submodule.common.path=common
submodule.common.url=https://github.com/purpleidea/puppet-common.git

我们用于awk提取路径信息,然后将其传递xargs给删除所有子模块目录。submodule update然后运行将重新填充这些目录:

$ git submodule update
Submodule path 'common': checked out '2c0ed2844c606fd806bde0c02e47e79c88fab4a9'

另外,我想重置所有子模块并放弃本地存在的所有更改。

因为我们要删除并重新克隆子模块,所以这还将丢弃所有本地更改。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章