【问题标题】:SVN "... is already a working copy for a different URL" issue and extra .svn issueSVN“...已经是不同 URL 的工作副本”问题和额外的 .svn 问题
【发布时间】:2018-05-30 04:28:26
【问题描述】:

我正在使用 Windows 7。我删除了一个分支 b4,然后在存储库中创建了一个同名的新分支。现在我正在尝试检查新创建的分支 b4,它与以前的名称相同。

project    
    -branches
      -b1
      -b2
      -b3    
    -trunk

如果我像这样在项目目录下发出 svn 命令:

svn co http://XXXX/project/branches/b4 branches

我会得到 svn: E155000: 'D:\1-workspace\project\branches' is already a working copy for a different URL 错误。

我也尝试过使用 TortoiseSVN,但我得到了与命令行相同的错误。

如果我发出这样的 svn 命令:

svn co http://XXXX/project/branches/b4 branches\b4

我可以签出代码,但在 b4 文件夹下有一个 .svn 文件夹。我不认为这是我想要的。项目文件夹下已经有一个 .svn 文件夹。这个额外的文件夹可能会导致其他问题。

我查看过类似的旧答案 herehere,但在我的情况下都没有。

【问题讨论】:

  • 您不能从您的branches 本地文件夹中执行一个简单的svn update 来更新/获取所有分支(包括b4)吗?
  • 我们在分支目录下有更多分支,但我不需要全部。如果我做 svn update,我会得到所有这些,这也很痛苦。
  • 好的。您可以在下面查看我的答案。

标签: svn tortoisesvn


【解决方案1】:

我建议您使用具有智能功能的 TortoiseSVN 仅更新您要更新的子文件夹:

  1. 右键单击本地工作副本中的branches 文件夹
  2. 选择TortoiseSVN => Update to revision...
  3. 选中单选按钮“HEAD 修订”以更新为 HEAD
  4. 在“更新深度”下,选择“仅此项目”
  5. 点击“Choose items...”并选择您需要的分支:b1、b2、b3 和 b4。
    这里要非常小心,因为如果您只选择 b4,TortoiseSVN 会从工作副本中删除分支 b1、b2 和 b3!另请注意,它会将 b1、b2 和 b3 更新为 HEAD 版本。
  6. 仅当您希望始终以这种方式更新分支时,才选中“使深度粘性”复选框。
  7. 点击确定,尽情享受吧!

【讨论】:

  • 你是我的英雄。有用!!!知道 TortoiseSVN 有这么智能的功能真是太好了。你是最棒的!
  • 我又遇到了类似的问题。一位同事在分支和主干的同一级别创建了一个“产品”文件夹,并将发布的代码放在“天水”文件夹下。我使用相同的步骤尝试获取新的“产品/天水”,但我不能。错误说:没有一个目标是工作副本。不同的是,这次真的是新建文件夹。上次 b4 文件夹之前在那里。它已被删除,然后又重新添加。
  • 在您的本地工作副本中,您是否有链接到存储库的“项目”文件夹?似乎没有。在这种情况下,您必须执行与分支和主干相同级别的“产品”文件夹的签出。
  • 是的,我愿意。在项目文件夹下有一个“.svn”文件夹,还有“branches”、“trunk”文件夹和新的“products”文件夹。
  • 好消息!现在可以了。新代码在新产品/天水下。有两个文件夹。我应该只一个一个地包含文件夹,即首先添加“产品”文件夹。然后重复该过程以添加“天水”文件夹。
猜你喜欢
  • 2014-05-09
  • 1970-01-01
  • 1970-01-01
  • 2011-05-12
  • 1970-01-01
  • 2013-12-22
  • 2011-08-17
  • 2010-09-27
  • 1970-01-01
相关资源
最近更新 更多