已开启
build_build.sh 中 GIT_PATH_OF_MODULE 关联数组定义后从未使用,git 源实际由 .gitmodules 控制 #13
此账号已注销创建于  8月14日
8月14日 创建

问题现象

build_build.sh 里定义了一个模块到 git 源的映射:

declare -A GIT_PATH_OF_MODULE
GIT_PATH_OF_MODULE["omni-npu"]="-b master https://gitee.com/omniai/omni-npu.git"
GIT_PATH_OF_MODULE["omni-cache"]="-b master https://gitee.com/omniai/omni-cache.git"
GIT_PATH_OF_MODULE["omni-eplb"]="-b master https://gitee.com/omniai/omni-eplb.git"
GIT_PATH_OF_MODULE["omni-proxy"]="-b master https://gitee.com/omniai/omni-proxy.git"

但整个脚本后续再也没有引用 GIT_PATH_OF_MODULE。子模块的实际添加/更新走的是 .gitmodules:

git config -f .gitmodules --get "submodule.components/$mod.url"
git submodule update --recursive ...

影响

  1. 死代码会误导维护者:想改子模块 git 源或分支时,看到这处映射以为改这里即可,实际改了不生效,真正的源头在 .gitmodules;
  2. 两处配置并存且可能不一致,一旦 .gitmodules 与这里的映射出现偏差,排查起来很费劲。

建议

删除 GIT_PATH_OF_MODULE 映射,或让它真正参与子模块初始化(例如在缺失 .gitmodules 时用它生成配置)。二选一,避免"看起来有用、实际没用"的配置残留。

likedislike
glucat
glucat成员
8月18日 评论:

感谢指正,GIT_PATH_OF_MODULE 为历史残留配置,定义后未使用,实际 git 源由 .gitmodules 控制。我们会在整改构建脚本时清理该映射,感谢反馈。

likedislike