You need to enable JavaScript to run this app. 如何让Git忘记已删除的、位于符号链接指向路径下的文件
优惠活动
大模型
产品
解决方案
定价
更多

如何让Git忘记已删除的、位于符号链接指向路径下的文件

出现该错误的核心原因是Git索引中仍残留log/.keep的路径记录,执行stash时Git会扫描所有索引中存在的路径,而log是指向仓库外的软链接,路径穿透软链接后找不到对应文件就会抛出异常。可按照以下步骤依次排查解决:

解决方案

  • 先确认git rm --cached log/.keep操作是否已提交
    未提交的情况下Git暂存区仍会保留该路径的记录,执行git commit -m "移除log/.keep的追踪"提交删除操作后重试git stash即可。
  • 若已提交仍报错,执行命令清理索引无效条目
    git update-index --remove log/.keep
    
    执行完成后重试stash操作。
  • 若仍存在问题,将log目录加入忽略规则
    1. 在项目根目录的.gitignore文件中新增一行/log/
    2. 执行git rm --cached -r log将整个log目录从追踪列表移除,该操作不会删除本地的符号链接
    3. 提交变更后再次执行stash
  • 临时快速解决方案
    如果仅需要快速完成暂存操作,可直接执行命令忽略故障路径:
    git stash push -- :!log/.keep
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.20 14:06:08