Eclipse eGit问题:无法将源文件移至暂存变更区
问题修复方案
一、文件夹莫名重命名且无法撤销的修复
- 先关闭Eclipse,找到本地项目的物理目录,手动把
initWireframes/DataflowGeometry文件夹拖回项目根目录,然后删除空的initWireframes文件夹 - 打开终端进入项目根目录,执行
git status确认文件路径变更,接着用git mv initWireframes/DataflowGeometry .同步Git的路径记录,最后执行git commit -m "Fix incorrect folder path due to workspace search issue"提交修正 - 重启Eclipse,右键项目选择
Refresh,确认文件夹结构恢复正常
二、eGit无法暂存Java文件的解决办法
1. 检查Git忽略规则
- 打开项目根目录的
.gitignore文件,确认没有误写*.java或者特定Java文件的忽略规则;如果是Eclipse自动生成的忽略文件,还要检查Team > Ignore菜单里有没有把这些Java文件加入忽略列表,有的话直接移除
2. 重置Git索引
- 关闭Eclipse,在项目根目录的终端执行以下命令:
git rm --cached -r . git add . - 这两条命令会清空当前Git索引,重新追踪所有文件。执行完后打开Eclipse刷新项目,再尝试把Java文件移入暂存区
3. 重新关联Git仓库
- 右键项目 →
Team > Disconnect,断开当前的Git关联 - 删除项目根目录下的
.git文件夹(如果有未提交的重要修改,先手动备份) - 重新初始化仓库:终端执行
git init,添加远程仓库地址git remote add origin <你的仓库URL>,拉取最新分支代码git pull origin <你的分支名> - 之后再把修改的Java文件添加到暂存区,正常提交即可
4. 修复MacOS文件权限
- MacOS下权限问题可能导致Git无法正常追踪文件,打开项目目录,右键目标Java文件 →
显示简介,在共享与权限里确认当前用户拥有读写权限 - 也可以用终端批量设置权限:
chmod -R 755 <项目根目录路径>,递归给目录和文件设置合理权限
内容的提问来源于stack exchange,提问作者Pierre Bierre
相关产品推荐
相关产品推荐

