【问题标题】:How to commit project into trunk from Eclipse (via Subclipse)?如何将项目从 Eclipse 提交到主干(通过 Subclipse)?
【发布时间】:2015-12-14 22:30:40
【问题描述】:

我在 Eclipse 中有一个项目MyProject/,我想分享并导入到我的 SVN 存储库中:

MyProject/
    src/
    dist/
    lib/
    ...etc.

最终,我想为这个项目创建一个 SVN 存储库,如下所示:

svn://mySVNrepo/
    MyProject/
        trunk/
            src/
            dist/
            lib/
        branches/
        tags/

但是当我右键单击MyProject 并选择Team >> Share 并按照提示操作时,我最终会得到:

svn://mySVNrepo/
    MyProject/
        src/
        dist/
        lib/

所以它是:(1) 不允许我创建主干、分支和标签目录,以及 (2) 不允许我将导入的项目“嵌套”到主干中。

然后我尝试从 SVN Repo Explorer 视图手动创建目录,并创建了:

svn://mySVNrepo/
    MyProject/
        trunk/
        branches/
        tags/

然后,我尝试在以下位置分享我的项目:

svn://mySVNrepo/trunk

当我尝试运行此初始导入时,我收到来自 Eclipse 的警告:

警告:指定文件夹已存在于存储库中。如果您继续,该文件夹将被签出到您的本地工作区,并且您的项目将连接到这个现有位置。要继续吗?

  • 不想想要覆盖我的本地副本(我正在尝试共享);它有很多工作要做!
  • 我不太明白这个警告在告诉我什么,基本上我不想搞砸任何事情!

所以我问:我的方法是否错误,如果是,我如何将我的项目第一次提交到trunk/ 子目录中?如果我的方法是正确的,那么请帮助我破译这个警告信息并建议我应该做什么。提前致谢!

【问题讨论】:

    标签: java eclipse svn subclipse


    【解决方案1】:

    一种可行的方法是将您手动创建的trunk/branches/tags 目录保留在SVN 中。将空 /trunk 检出到本地工作站上的并行目录中(假设目录 #2,本地项目为 #1)。然后将您的项目 + 代码从 #1 复制到该 /trunk 目录并提交到 SVN。

    然后您可以在本地创建第三个目录,并检查您的 SVN 副本并确保它可以正确编译/运行。如果是这样,您可以删除中间的#1/#2 目录,或者将您的初始项目作为备份以防万一(但它将是非版本化的)。然后继续使用目录 #3 作为新的 SVN 监控工作区。

    如果我不确定我的更改将如何影响我不想丢失的工作,我会尝试采用这样的方法,以便在出现问题时对我的代码造成的伤害最小(比如我不熟悉的SVN命令/操作等)。

    【讨论】:

    • 我最终做了类似的事情。我把MyProject的名字改成了MyProject2。然后我将 myProject/trunk/ 留空,并将其作为一个名为 MyProject 的 Java 项目签出。然后我将MyProject2 的所有内容复制到MyProject 中。然后我将MyProject 与存储库同步,并在此过程中提交所有“更改”。我喜欢 Eclipse 和 SVN,但这太荒谬了!
    • 同意,有时感觉就像您在与本应提供帮助的版本控制系统作斗争。我认为较新的版本控制应该可以稍微减轻痛苦(我需要消除我的懒惰并更多地探索它们)。很高兴它对你有用!
    【解决方案2】:
    1. 从菜单中,选择Window > Open Perspective > SVN Repository Exploring

    2. 右键单击您的存储库 > 新建项目结构 > 单个项目或多个项目布局 > 输入“MyProject”作为名称.这将创建具有/trunk/branches/tags/ 项目结构的新项目。

    3. 创建后,右键单击项目并选择 Checkout

    4. 'MyProject' 现在应该在您的导航器视图中。从那里您可以将您的 /src /dist/lib 文件夹复制到“我的项目”trunk 文件夹中。

    5. 右键单击您的项目并选择团队 > 提交

    编辑:

    您也可以尝试使用 Eclipse 的 Subversive 插件。这个插件有一个更简单的方法来分享你现有的项目到svn作为一个多项目布局(trunk/branches/tags文件夹结构)。

    我在类似的thread 中发布了这些步骤。

    【讨论】:

      【解决方案3】:

      经过一小时的反复试验,我只是做了以下事情:

      1. 分享到错误的文件夹
      2. 进入 SVN 资源管理器并将文件夹(带有 src 等)重命名为 trunk
      3. 将主干移动到 svn 中的正确位置(例如项目/主干)
      4. 在 Eclipse 中进入 Project Explorer,右键单击项目,团队,切换并选择新的主干。

      【讨论】:

        猜你喜欢
        • 2013-06-15
        • 1970-01-01
        • 2013-01-10
        • 1970-01-01
        • 2013-06-13
        • 1970-01-01
        • 1970-01-01
        • 2012-03-15
        • 1970-01-01
        相关资源
        最近更新 更多