2011-11-23 46 views
3

我一直在使用SVN和Eclipse进行开发,并且喜欢这两者之间的强大整合。不过,我现在正在切换到git,并且明白,像EGit这样的git Eclipse插件已经变得更好了,但它们还不如Eclipse的SVN插件。 (例如,仍然没有子模块支持,并且我计划广泛地使用子模块。)在eclipse中开发而不使用任何git eclipse插件?

我在想,是否有任何人使用Eclipse进行git项目开发但不使用Eclipse插件?也就是说,您可以使用另一个git GUI客户端(我在Linux上)或者从命令行执行所有操作。如果是这样,这对你如何工作?

是不是能够直接在Eclipse中看到哪些文件没有与存储库同步等很大的痛苦,还是这不是什么大不了的?或者我仍然可以使用EGit来查看哪些文件发生了变化,但是可以通过命令行或其他GUI客户端进行所有提交并执行所有操作?如果是这样,任何人都可以描述这样一个工作流程的样子。

从多个客户端(如命令行,EGit和多个git GUI客户端)访问一个存储库是否存在任何风险或问题 - 就像它可能会导致存储库损坏一样,因为它们都可能同时更改元数据?或者它是完全安全的?

随着SVN的一切都很简单 - 我从来不需要命令行或其他GUI客户端的任何东西。在Eclipse中一切都是可能的。但是现在我担心会发生什么,因为我真的不知道这将如何改变我的发展风格,或者如果它是可行的。当然,git是如此流行的VCS,Eclipse是如此流行的IDE,有许多人一起使用,谁可以为我描述他们如何使用它。

回答

3

EGit将在命令行git工具中发挥出色。我在Linux上使用这两个。我认为仍然值得安装EGit,然后至少你会看到你的项目的状态。

有时您必须使用F5-Refresh来刷新EGit的回购视图,但EGit已经可以在本地文件更改的情况下刷新工作空间,所以它不会经常出现。

我唯一的建议是你不希望多个工作区指向同一个git仓库。这可能会导致混淆。

+1

+1。我只在Eclipse中使用命令行,从来没有任何问题。使用CLI可以访问Git的所有功能,所以这在我看来只是最好的解决方案。我曾在不同的机器上使用EGit来显示状态以及CLI,并且工作得很好。 – poke

0

我不能专门为git说话,但我曾经做过与SVN非常类似的事情,而且我看不到这样做的任何问题。另外,至少在SVN和Subclipse中,Subclipse与SVN工作副本一起工作,就像任何其他SVN客户端一样。有几个操作,我仍然使用svn命令行工具来对付我正在使用Eclipse的相同项目。这包括诸如“svn status”之类的东西,以及跨文件批量更新SVN属性(Subclipse目前不支持)。除了需要在Eclipse中使用F5来执行偶尔的刷新,我从来没有遇到任何问题。

我已经做了几个其他源控制系统非常相似的事情,并从来没有任何问题。特别是如果你只是使用外部客户端,不用担心源代码控制集成到Eclipse的git中,我看不出你会遇到任何问题,因为Eclipse不会试图分享任何问题。我也会推荐尝试EGit,因为我猜测它的工作方式与Subclipse非常相似,不会导致任何重大问题。 (我希望自己能尽快做到这一点。)

就工作流程而言,在很多情况下 - 至少对于有经验的开发人员来说,这在某些情况下应该会更好。在Eclipse中,我经常发现自己在Package Explorer和Navigator视图之间切换,以查看Package Explorer视图中默认情况下Eclipse隐藏或转换的所有文件。在Eclipse和另一个客户端之间切换确实没有任何不同。