首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >git -submodules / repo -如何对独立模块中的一堆分支使用提交和分支?

git -submodules / repo -如何对独立模块中的一堆分支使用提交和分支?
EN

Stack Overflow用户
提问于 2013-01-30 05:25:17
回答 1查看 142关注 0票数 1

我有repo包装器和十几个不同的git仓库在里面。

我希望有一个补丁,以后可以通过以下方式应用/使用:

我想在所有已更改的子模块上执行此命令:

代码语言:javascript
复制
git checkout -b all_sub_branch
git commit -a all_submodules
git format-patch all_submodules aaa.patch
git apply aaa.patch
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-01-30 16:01:52

简单的git答案(使用子模块):

为每个子模块完成的这类过程可以通过以下方式启动:

代码语言:javascript
复制
git submodule foreach [--recursive] ...

使用'...‘指的是一个包含所有命令的git别名。

来自git submodule man page

代码语言:javascript
复制
foreach

评估每个检出的子模块中的任意外壳命令。

该命令可以访问变量$name$path$sha1$toplevel

  • $name.gitmodules中相关子模块部分的名称,
  • $path是相对于超级项目的子模块目录的名称,
  • $sha1是超级项目中记录的提交,
  • $toplevel是超级项目顶层的绝对路径。

此命令将忽略在超级项目中定义但未检出的所有子模块。

除非给定了--quiet,否则foreach会在计算命令之前打印每个子模块的名称。

如果给定了--recursive,则递归地遍历子模块(即,给定的外壳命令也在嵌套子模块中求值)。

问题是android repo wrapper command以自己独特的方式做了git子模块做的事情。

因此,git submodule foreach的等价物可能是:repo forall,例如:

repo forall -c 'git status'

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14592583

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档