我怎样才能知道git子模块是否有新的提交

时间:2012-09-21 10:54:02

标签: git git-submodules

我们有很多带子模块的存储库,我们想报告哪些子模块可以升级,因为它们引用的存储库有新的提交。有没有办法在不更改当前签出的版本的情况下执行此操作?

基本上我们想知道3个不同的提交;
1)源包含存储库指向的提交 2)本地包含存储库指向的提交(由于子模块的手动拉动,这可能与1不同) 3)子模块库的头部。

如果本地落后于原点,我们希望进行子模块更新 如果local是起源,我们不想进行子模块更新,因为开发人员可能会更改它 如果local位于子模块库的头部后面,我们希望收到警告。

1 个答案:

答案 0 :(得分:0)

它有点冗长,但您可以使用awksed等将其修改为相关信息,但我会从git submodule foreach git remote show或{{1}开始}。这应该提供足够的信息来构建脚本来进行自动更新等。