如何查明git子模块中的提交是否在原始repo中的特定分支中



我有一个repobar,它将foo的git子模块带到路径/repo/foo

我想在bar中运行一个脚本,以确认子模块foo只有来自main分支的提交。

有没有一种方法可以做到这一点,而无需手动迭代子模块中的每个提交,然后再验证它是否在原始reposfoo分支中?

我知道的最简单的方法是列出foo子模块设置为的所有内容:

git log --all --raw --diff-filter=d --no-abbrev --pretty= -- foo | awk 'print $4'

列出子模块foo的主要分支中的所有内容

git -C .git/modules/foo rev-list origin/main

因此,验证意味着检查第一个列表中的所有内容是否也在第二个列表中。

最新更新