You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行git add命令添加Angular项目文件夹报子模块错误如何解决?

错误含义

fatal: Pathspec 'my-project/README.md' is in submodule 'my-project'报错的核心原因是my-project本身已经是独立的Git仓库:创建Angular项目时默认会自动初始化Git仓库,生成.git隐藏目录。外层my-folder的Git仓库会自动将内层带.git目录的文件夹识别为Git子模块,子模块的文件版本由自身的Git仓库独立管理,外层仓库默认无权直接追踪子模块内部的单个文件,因此直接add子模块内的文件会触发报错。

解决方法

可根据你的实际需求选择对应方案:

场景1:不需要保留my-project的独立Git提交历史,仅作为普通文件夹纳入外层仓库管理

  • 进入my-project目录,删除其中的.git隐藏目录(Windows系统需先开启资源管理器的「显示隐藏的项目」选项,Linux/macOS可直接执行命令rm -rf .git)
  • 回到外层my-folder目录,执行命令git add my-project/即可将整个目录下的所有文件一次性加入暂存区,不需要额外加通配符/*
  • 正常执行git commit提交即可

场景2:需要保留my-project的独立Git版本管理,分开维护内外层仓库

  • 先清理之前错误add产生的缓存记录,执行命令git rm --cached my-project(不要加-rf参数,避免删除本地文件)
  • 进入my-project目录,将所有本地修改commit后推送到它对应的远程Git仓库
  • 回到外层my-folder目录,执行命令git submodule add <my-project对应的远程仓库地址> my-project,即可将my-project正式注册为外层仓库的子模块
  • 后续更新子模块内容时,需先进入子模块目录单独提交推送修改,再在外层仓库更新子模块的版本引用即可

内容的提问来源于stack exchange,提问作者Diamoniner12345

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 08:06:03