GitHub Desktop Win64向新仓库提交变更时报'Invalid Path'错误
问题根因
- 路径提交报错、GitHub显示带箭头无法访问的文件夹,核心原因是spa目录为嵌套Git仓库:你初始化前端项目时大概率在spa目录下生成了隐藏的
.git文件夹,外层项目的Git无法直接收录嵌套仓库的内容,只会将其识别为未配置的子模块引用,因此提交时报索引添加失败的错误。你尝试的修改文件名、调整NTFS保护配置都不涉及核心原因,因此无法解决问题。 - 开头的LF/CRLF换行符警告是Git跨平台换行符自动转换机制触发的,属于非致命提示,可通过配置关闭。
解决步骤
- 清理spa目录的Git配置
开启Windows文件管理器的「显示隐藏的项目」选项,进入C:\abcl\src\presentation\spa路径,删除该目录下的.git隐藏文件夹,不需要的话可以同步删除同目录下的.gitignore等Git相关配置文件。 - 清除外层仓库的错误缓存
打开命令行切换到项目根目录C:\abcl,执行以下命令清除Git索引中缓存的无效子模块引用:git rm --cached src/presentation/spa
注意命令结尾不要加斜杠,执行后只会清除Git缓存,不会删除本地spa目录的实际代码文件。 - 重新提交目录
依次执行以下命令重新添加spa目录并提交:
git add src/presentation/spa/ git commit -m "feat: add spa directory"
完成后推送即可,此时spa目录的所有内容会正常被仓库收录,不再显示为带箭头的无效链接。
4. (可选)关闭换行符警告
在项目根目录执行以下配置即可避免后续出现同类换行符提示:git config core.autocrlf true
该配置为Windows环境Git的推荐配置,会自动在提交时将CRLF转为LF,拉取时转回CRLF适配Windows系统的换行符规则。
内容的提问来源于stack exchange,提问作者Vranvs
相关产品推荐
相关产品推荐

