如何在Eclipse IDE中使用Git工作树?

13
我正在将一个大型应用程序从SVN迁移到Git,只参考了《Pro Git》和一些工作树的细节在线文档,并尝试使用Git。 我创建了一个单独的仓库来管理我的应用程序代码。我的应用程序由许多不同的Eclipse项目组成,这些项目是Maven性质的,并且独立发布。我为每个Eclipse项目创建了一个远程分支,如建议所述。现在,我想同时检出其中一些Eclipse项目,到新创建的独立功能分支中,以实现影响多个Eclipse项目的新的应用程序功能。
这里,于2019年08月28日,Andre Bossert表示Eclipse能够检测并支持Git工作树目录。但似乎我无法在Eclipse中找到正确的按钮。请问是否可以指向Egit文档的文档,以获取更多信息?我自己也没能找到这些信息。

请问您能展示一下代码库在“Git Repositories”视图中是如何显示的吗?除此之外,我认为在您的情况下,Git工作树不是最好的选择。听起来您正在尝试在Git中模仿SVN:将不同分支的不同子目录检出为不同的项目。在SVN中,提交会创建一个新版本,而在Git中,提交是可以轻松应用于其他分支的更改。 - howlger
你尝试过在“Git Repositories”视图中将每个工作树作为单独的存储库添加吗? - howlger
Vert.x项目在Github上为每个模块创建了一个存储库。这是我可以轻松做到的。但我想保留应用程序上下文。此外,互联网搜索告诉我,通过同一存储库中的分支来管理模块化应用程序似乎是最佳实践。虽然工作树功能似乎完全符合我的需求,但IDE支持似乎缺乏。但再次,我对Git很陌生。也许我理解错了什么。有人使用多个Git存储库而不是单个存储库来管理大规模模块化应用程序吗?尽管如此,我的问题的重点是Eclipse以及如何使用工作树。 - Martin
似乎我们应该就这个问题进行一次交流。Stackoverflow的评论区字符太少了。我建议我先练习Git并重新阅读您的输入,然后再来讨论。让我们专注于如何让Eclipse检测到Git工作树。我需要做什么? - Martin
2
使用Eclipse 2020-06版本时,似乎无法识别git工作树。我无法将现有的工作树导入为git仓库(Eclipse根本找不到仓库),并且从现有工作树打开的项目在Eclipse中显示没有团队/git信息。关于您提供的错误链接,我不确定:虽然该评论似乎说已经实现了某些部分,但在任何官方的Eclipse版本中似乎还没有实现。 - Hans
显示剩余5条评论
1个回答

8

tl;dr 截至2023年4月,Eclipse IDE不支持Git工作树。


更长的答案:

不幸的是,由 Eclipse 基金会提供的 Eclipse IDE 不支持 git-worktree 创建的工作树。

这个问题有一个未解决的 bug - Bug 477475 - git 2.5 worktree support。该 bug 在2015年被报告,至今仍未解决。

对此问题进行了相当多的工作,并存在一个(大部分?)可行的实现,如在 bug 和链接的 Gerrit 更改中所讨论的那样,但该代码尚未进入任何发布版本。

截至2021年3月,最新的工作似乎是 Gerrit change 163940: Add git-worktree support for already created worktrees,最后更新于2020年12月。因此我们只能等待并观望...或者帮助编写代码 :-).


感谢您提供这个专业的答案。我也得出了结论,现在最好避免它。 - Martin
1
状态:新的。LOL - Eric Duminil

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接