我在一个子模块的git项目中有一个库,我将其称为service-lib。
service-lib不是我自己或我公司开发的,实际上我鼓励不要编辑它。
如何检查此模块的git状态:
git submodule具有以下命令来查看子模块的状态。
git submodule status path/to/submodule
使用status命令就像使用任何其他git repo一样
git submodule status
显示子模块的状态。
这将打印每个子模块当前检出的提交的SHA-1,以及SHA-1的子模块路径和git describe的输出。
如果子模块未初始化,则每个SHA-1都将带前缀,如果当前检出的子模块提交与包含存储库的索引中找到的SHA-1不匹配,则为+,如果子模块存在合并冲突,则为U.
如果指定了
--recursive
,则此命令将递归到嵌套的子模块中,并显示其状态。如果您只对当前初始化的子模块相对于索引或HEAD中记录的提交的更改感兴趣,
git status
和git diff
也将提供该信息(并且还可以报告对子模块的工作树的更改)。
请注意,如果您只有一个子模块,则查看其状态会更简单:
git submodule
这是因为,在Git 2.22(Q2 0219)之前,子模块的默认行为未在git-submodule.txt和git-submodule的使用文本中记录。
见commit 68cabbf的Denton Liu (Denton-L
)(2019年2月15日)。
(由Junio C Hamano -- gitster
--合并于commit c388c12,2019年3月7日)
没有参数,显示现有子模块的状态。 有几个子命令可用于对子模块执行操作。