Git、SVN和Eclipse工作流

5
我正在尝试采用以下工作流程:
  1. 通过命令行使用git svn clone克隆svn存储库(egit不支持git-svn)
  2. 使用egit在eclipse中打开项目,因为我更喜欢使用egit来分支、合并、提交等...
  3. 当我准备好提交更改时,我使用git svn dcommit将更改提交回svn
我在第2步遇到了麻烦,不知道如何导入git项目,eclipse告诉我无法将其导入到当前目录中使用相同的目录,因为已经有一个同名的项目存在。这很令人困惑。
有人知道如何做到这一点吗? 还想听听其他使用egitgit svn的工作流程示例。我知道最好通过命令行完成所有操作,但是我正在尝试简化我的团队中对命令行界面不熟悉的开发人员转换到git的过程。

1
经过一些测试,这不是最好的做法,因为当你通过CLI进行git svn rebase时,egit并不知道它。几秒钟后,它会更新更改,但仍然不是一个好的实践。我真的希望有更简单的方法在eclipse中使用gitsvn。由于某种原因,有些人害怕使用命令行工作... - Michael
2个回答

7

我曾经与egit插件简要地合作过(实际上最近停止使用它,只是使用msysgit作为我的Git GUI客户端,并将其与Eclipse分开运行)。我发现Eclipse本身很繁忙,添加此插件会使其变慢(至少对我来说是这样)。

我在Eclipse中设置已经克隆的项目时所做的事情:

  1. 在Eclipse中。文件->导入->现有项目到工作区

  2. 选择项目的根目录。不要勾选复制项目到工作区。点击完成。

  3. 导入项目后。右键单击项目,转到团队->共享项目

  4. 选择Git作为仓库类型,然后点击下一步

  5. 检查在项目的父文件夹中使用或创建仓库。由于您已经克隆了该项目,因此它将受到Git的跟踪。当您选中此选项时,它将显示项目、路径和仓库(.git)。

  6. 点击完成,您就可以开始工作了。


谢谢,我试图导入一个Git项目,所以它没有工作。 - Michael

2

我认为你最好使用SubGit而不是git-svn。

SubGit在服务器端工作。它会在每次来自任一方的修改时自动同步Subversion和Git仓库之间的所有修改。

从客户端的角度来看,启用了SubGit的仓库就像一个普通的Git仓库,因此您可以从中拉取和推送。有关更多详细信息,请参阅SubGit文档SubGit与git-svn比较


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