能否将文件移动到Git仓库外?git mv报错outside repository如何解决
报错原因
dashboard目录是一个独立的Git仓库,Git的所有版本控制操作(包括git mv)仅允许在当前仓库的目录范围内执行。你指定的目标路径../对应上层的public_html目录,不属于dashboard仓库的管辖范围,因此触发报错。
解决方法
快速操作(无需修改Git仓库,作业场景首选)
如果不需要保留该index.html在Git中的移动历史,直接用系统复制命令覆盖上层目录的占位文件即可:
cp index.html ../
方案1:需要在dashboard仓库中记录文件移除的变更
- 先在
dashboard仓库中删除对该文件的Git追踪:
git rm index.html
- 提交删除操作的变更:
git commit -m "移除index.html,迁移至站点根目录"
- 执行移动命令将文件移到上层目录:
mv index.html ../
方案2:需要保留该index.html的完整提交历史
你需要将上层的public_html目录初始化为Git仓库,再调整dashboard为该仓库的子目录或Git子模块,调整仓库结构后即可在public_html仓库范围内执行文件移动操作。普通作业场景无需采用该方案。
内容的提问来源于stack exchange,提问作者Krushulang
相关产品推荐
相关产品推荐

