使用 Egit 插件,是否可以在不删除本地副本的情况下从源代码管理中永久删除文件?
即,是否有相当于运行“git rm --cached”的 GUI 操作?
(编辑以简化问题)
我找到了答案。Team->Untrack 确实相当于“rm --cached”。但是,当您取消跟踪然后尝试提交时,有一个已知的错误会产生奇怪的行为。
Team -> Advanced -> Untrack
为我完成了这项工作(git rm --cached
)。
在最初没有在.ignore 中包含目录和文件之后,我遇到了同样的问题。我还尝试了“取消跟踪”和“从索引中删除”的可能性,但都没有帮助(由于仍未解决的 Egit 问题)。因此,最后我在本地删除了文件(将项目全部留在了 bug 中),提交并推送到 github,然后在本地取消删除并将文件添加到 .ignore。非常不雅,但它有效。我为此浪费了很多时间和精力,我希望这对某人有所帮助。
另一个选项,类似于Sri Sankaran在评论中建议的,是更新索引以假设不修改您的配置文件:
在首选项中,在 Egit 中,您可以列出“假定未更改”的文件:
该文件保持版本化并保留在磁盘上,但不会检测到任何修改。
如果您需要从 eclipse 项目中删除不可见的文件夹(或文件):