症状
Git 拒绝运行并报 Unable to create '.git/index.lock': File exists。它影响所有会写索引的命令,且在解决前每次尝试都以同样方式失败。
诊断
在触碰锁文件之前,先确认没有 Git 进程在活动:
ps aux | grep "[g]it"
ls -la .git/index.lock
若没有进程运行,且你最近中止过 Git 命令,则该锁已陈旧。
修复
只删除陈旧的锁:
rm .git/index.lock
git status
若合并或变基被中断,检查状态并继续或中止:
git merge --abort
验证
运行 git status 与原先失败的命令;二者都成功且 index.lock 不再重现,确认遗留锁已清除、仓库状态一致。