从源代码管理中打开现有项目

时间:2010-10-29 17:06:11

标签: eclipse mercurial

我一直在将我的源码推送到Mercurial存储库。今天我需要删除我的本地副本并重新克隆。我这样做只需将我的本地副本移动到其他地方(以防万一)并输入“hg clone url”。

这部分工作得很好。

但是,当我尝试将新克隆的本地副本拉入Eclipse时,出现以下错误:

/Users/Andrew/Dev/Workspace/Android/MyProject overlaps the location of another project: 'MyProject'

我的猜测是我一直在提交一些我不应该拥有的元文件。有没有人有任何想法?这是我的.hgignore:

syntax: regexp
\.DS_Store
.swo
.swp
.metadata/
/bin/

注意:看起来我的hgignore没有阻止gen文件夹。这可能是问题的一部分吗?

5 个答案:

答案 0 :(得分:54)

Eclipse中存在一个错误,它不允许您从现有源创建Android项目:

http://code.google.com/p/android/issues/detail?id=8431

您必须将 MyProject 移动到其子目录中没有任何其他项目的文件夹。然后,您可以使用 MyProject 从现有源创建新项目。从工作区中删除新项目而不删除磁盘上的内容并将其移回 Android 文件夹。现在做一个导入 - >一般 - >应该可以导入现有项目到工作区 MyProject

这是我能够做到的唯一方法。

答案 1 :(得分:6)

好的,在遇到类似的问题并且浪费了一些时间之后,我会尝试总结一下:

Eclipse Juno /4.2 SR1 (但我认为这是对eclipse如何进口项目的普遍误解)

  1. 如果您希望新项目“连接”到git / mercurial,则必须通过“从Git导入/ Git /导入”来克隆和导入
  2. 如果您的“工作区目录”等于“本地目标目录”,则会失败。 通过egit的git clone绝不能放置!在“eclipse workspace目录”中!
  3. 项目导入将失败,因为当导入发生时,克隆的“.project文件”中的项目名已存在于eclipse工作空间目录中。

答案 2 :(得分:0)

我认为问题在于您将本地副本移走,然后尝试将另一个项目添加到Eclipse中与之前相同的位置,而您只是混淆了Eclipse ...

我建议尝试使用Mercurial的命令行命令,当你进入Eclipse时,首先清理现有项目,然后再添加另一个项目。

答案 3 :(得分:0)

我的解决方案只是作为general项目而不是android项目导入。

答案 4 :(得分:0)

我在尝试导入git repo项目及其子模块时遇到了这个问题。我最终使用了import - > git - >来自Git的项目(git插件)。这理解了项目中项目的概念就好了。该项目现在由该插件监控。这对我来说是一个很好的权衡。