如何使用EGit分离Eclipse工作目录与Git仓库目录
解决Eclipse EGit将项目移至Git仓库目录的问题
我完全懂你的困扰——EGit默认会把项目文件挪到Git仓库目录里,但咱们确实可以让Eclipse工作区和Git仓库目录彻底分离,下面给你两种可行的方案:
方案一:新建关联时直接保留项目在原Eclipse工作区
这是最直接的办法,适合还没执行关联操作的情况:
- 第一步,先在你的
git-workspace目录里创建一个空的Git仓库:
你可以打开终端执行git init git-workspace/java-hello-world-repo(仓库名可以自定义),或者在Eclipse里通过「File > New > Other > Git > Git Repository」,选择git-workspace作为仓库路径,创建空仓库。 - 回到Eclipse,选中你的
java-hello-world项目,右键点击「Team > Share Project」。 - 在弹出的向导中,选择刚才创建的空Git仓库,重点来了:取消勾选「Use or create repository in parent folder of project」,然后点击「Next」。
- 接下来的页面会让你设置项目在Git仓库里的映射路径(默认就是项目名,直接保留即可),完成后点击「Finish」。
这样操作后,你的项目文件会稳稳留在eclipse-workspace里,同时和git-workspace里的Git仓库完成关联,所有版本控制操作都不会移动项目文件。
方案二:已移动项目后的恢复步骤
如果你已经不小心让项目被移到git-workspace了,也能轻松恢复:
- 先把
git-workspace/java-hello-world整个文件夹复制回eclipse-workspace目录。 - 回到Eclipse,先选中已关联的项目,右键点击「Team > Disconnect」,在弹窗里选择「Do not delete the Git repository」(保留
git-workspace里的仓库),然后点击「OK」。 - 接着把Eclipse里原来的项目删除(右键「Delete」,只选择「Delete project from workspace」,不要勾选删除磁盘内容),再重新导入
eclipse-workspace里的项目。 - 最后按照方案一的步骤,重新把项目关联到
git-workspace里的Git仓库,记得取消勾选那个父目录的选项。
额外注意点
- 你可以在Eclipse的「Window > Preferences > Team > Git」里,把「Default repository folder」设置为
git-workspace,这样后续创建仓库时默认路径就是你的Git工作区,不用每次手动选。 - 关联项目时一定要留意那个「Use or create repository in parent folder of project」的勾选框,这是导致项目被移动的核心原因。
内容的提问来源于stack exchange,提问作者Michel Keselbrener
相关产品推荐
相关产品推荐

