Java 使用eclipse的单人项目的版本控制?

Java 使用eclipse的单人项目的版本控制?,java,eclipse,version-control,r,project-management,Java,Eclipse,Version Control,R,Project Management,我目前正在自己做几个项目(至少开发部分是由我完成的:)。将Eclipse与不同的Java、R、SQL和其他源文件一起使用,我想知道哪个版本控制系统最适合我 当时EclipseIDE的历史似乎已经足够了,但我不确定在一个月/一年内这是否是真的 您会推荐什么解决方案?为什么 更准确地说:如果我决定使用完整的版本控制系统,我肯定会使用SVN或git。但我只是不确定是否有必要 small update: has the release of Eclipse Helios added new opinio

我目前正在自己做几个项目(至少开发部分是由我完成的:)。将Eclipse与不同的Java、R、SQL和其他源文件一起使用,我想知道哪个版本控制系统最适合我

当时EclipseIDE的历史似乎已经足够了,但我不确定在一个月/一年内这是否是真的

您会推荐什么解决方案?为什么


更准确地说:如果我决定使用完整的版本控制系统,我肯定会使用SVN或git。但我只是不确定是否有必要

small update: has the release of Eclipse Helios added new opinions?
,因为您可以立即启动,而不需要中央存储库服务器

其他一些优势(与其他SCM相比):

  • 更少混乱的文件系统:Git只在存储库的根目录下创建一个文件夹(与SVN不同)
  • 不会对“正常”文件处理功能造成太多干扰。例如,在SVN中,您需要使用自定义命令重命名或移动文件。Git的情况并非如此

我觉得Git非常轻量级,因此没有理由等到您的项目“足够大”或其他任何东西。

据我所知,这只是一个您最喜欢哪个版本控制系统的问题

但我认为最高效的系统可能是git。对于eclipse插件:)


我还是建议使用版本控制系统。即使是在小项目中,您也会很快得出结论,以前的解决方案可能会更好。如果没有版本控制系统,您将难以恢复更改或恢复到以前的版本(这是这些系统的最大优点之一,对吗?;)。

我推荐几乎所有分布式版本控制系统。我在愤怒中使用了
git
hg
,并戳了戳
fossil
(我之所以包括它,是因为它提供了
git
hg
所缺乏的一些功能)。我将从我的角度分析主要的优点和缺点(注意:如果它们都有相同的优点,我就不提了,例如,它们都是快速和轻便的):

  • git
    • 专业人士
      • 非常灵活
      • GitHub
    • 缺点
      • 陡峭的学习曲线
      • 更灵活
      • 上次我看Eclipse集成时,它是跛脚的
  • hg
    • 专业人士
      • (海事组织)更一致的命令
      • 不太灵活
      • 比特桶
    • 缺点
      • 不太灵活
      • 没有git那么强劲
    • 警告
      • 我最近没有检查Eclipse支持;它过去比git更好,但似乎停滞不前
  • fossil
    (免责声明:我没有生气地使用过这个)
    • 专业人士
      • 由SQLite背后的人编写,因此您可以相当肯定它是可靠的代码
      • 提供的不仅仅是版本控制,例如分布式bug跟踪器
      • 易于设置以供其他人访问
    • 缺点
      • 动力不如
        git
        hg
      • 我非常确定
        fossil
        的Eclipse集成是不存在的(这是我最后一次查看)
      • 据我所知,没有免费的主机可以与GitHub或BitBucket并行,所以实际上你必须自己托管你的回购协议

还有其他的DVCSs,特别是包括
darcs
bzr
,但我还没有充分使用它们来对它们发表有价值的意见。

您的评论似乎让人觉得真正的问题是,考虑到它是一个人的项目,您是否真的需要使用版本控制

设置和使用git或mercurial只需很少的时间。想做就做如果你不需要它,你已经失去了几分钟。如果您确实需要它,它可能会为您节省数周的时间。

Git和Mercurial(hg)作为分布式源代码存储库确实有很大的发展势头,但在我看来,对于一个人的团队来说,您会发现Subversion提供了最多的支持。如果你使用的是Windows,那么就有了OrtoiseSVN shell集成,这非常棒(它甚至与Trac集成),免费的Subversion托管到处都是,并且对ProjectLocker.com有一些个人体验(他们使用Git和SVN)。另外,Subversion直接集成到Eclipse IDE中非常简单。

a/

b/


c/Eclipse目前是(现在也是),因此Git将是Eclipse上的VCS目标。

使用SCM而不仅仅是Eclipse History有很多好处,即使是一个人:

  • 对提交的评论:你可以说你为什么做了某事。当您需要根据其历史找出某些代码为什么会这样做时,这将帮助您

  • 备份:哦,你把你的Eclipse工作区完全搞砸了?只需创建一个新代码,并引入新的代码副本

  • 持续集成:检查代码是否在每次保存后生成,运行测试(这很重要),并创建实际的二进制文件发送给客户


这是你的安全网。花时间去学习它,并正确地使用它。你最终会喜欢它:)

更准确地说:如果我决定使用完整的版本控制系统,我肯定会使用SVN或git。但是我只是不确定是否有必要…你可以编辑你自己的问题=)对-谢谢你的提示(我在这里还是新手)这是开源的吗?如果是这样,请根据您的偏好选择github、googlecode或bitbucket。如果你不想在github.com上主持一个git项目,一个很好的备份方式就是将你的git回购放在Dropbox这样的服务中。这些都是非常有力的论据——正是我想要的:)如果你依赖你的