【问题标题】:Change repository on your folder with TortoiseSVN使用 TortoiseSVN 更改文件夹上的存储库
【发布时间】:2009-04-20 23:16:43
【问题描述】:

我不小心在 TortoiseSVN 中创建了一个没有默认文件夹的存储库,然后在本地进行了结帐。意识到,嘿,我忘记使用默认值创建该存储库,所以我使用 VisualSVN Server 删除了存储库,然后重新创建了相同的存储库名称,该名称现在具有默认文件夹主干等。

问题是,我的本地文件夹已经被签出。如何更改/重新指向新的存储库 URL?

【问题讨论】:

    标签: svn tortoisesvn visualsvn-server


    【解决方案1】:

    您可以右键单击该文件夹,然后在 Tortoise 菜单中单击“重新定位”。

    【讨论】:

    • 在这种情况下这肯定行不通吗?他的存储库结构已经改变,他不只是想将存储库移动到其他地方。
    • 当然他可以把它重新定位到trunk文件夹。
    • 我尝试重新定位到新 URL,但说 UID 冲突
    • 看起来最新版本的 Tortoise SVN 没有这个选项了 - 还有其他建议吗?
    • @Hippyjim 还确保您右键单击工作副本根。上下文菜单仅针对您的工作副本根显示。
    【解决方案2】:

    您可以右键单击您的工作副本并选择 TortoiseSVN/Switch... 然后将“到路径:”更改为存储库中的新文件夹。 它对我有用。

    【讨论】:

      【解决方案3】:

      您将无法轻松做到这一点,因为这两个存储库没有相同的唯一标识符 (UID)。有两种方法可以做到这一点:

      1. 在新存储库上强制使用特定的 UID(不确定您的 SVN 服务器是否提供该选项)

      2. 不要删除存储库,只需在工作副本中创建文件夹,并将文件svn move 放入主干,然后将整个内容签入。

      【讨论】:

      • 解决此问题的第一种方法:如果您可以访问服务器,我会在 the_repo/db/ 处添加一个文件,该文件没有扩展名,其名称为 UUID,可以替换为您的 UUID需要。不过,我建议在更改之前进行备份。
      【解决方案4】:

      假设您在签出版本中没有任何您需要的文件,只需删除目录并再次签出即可。

      【讨论】:

        【解决方案5】:

        (假设您的本地工作副本中有文件):由于您创建了一个新的存储库,我想您必须将您的工作副本导入到存储库中。

        使用 TortoiseSVN,您可以将工作副本导出到不同的文件夹(这样您就只有源文件,没有 .svn 文件夹)。然后您可以将该文件夹导入到新存储库的 /trunk 中。

        【讨论】:

        • 也许我应该删除每个 .svn 文件夹,然后从头开始重试
        • 意味着我所说的受影响文件夹的每个子文件夹中都有一个 svn 文件夹。如果我删除其中的所有子 svn 文件夹,我认为它本质上就像手动从该文件夹及其子文件夹中清除源代码控制?
        • 我最终只是删除了主目录中的 .svn 文件夹(我最初单击并选择了签出的那个),这让我可以清除并重新开始。
        • 我最终完全按照您的做法进行了修复,方法是删除 .svn 文件夹并重新签出
        猜你喜欢
        • 1970-01-01
        • 2013-04-23
        • 2022-10-17
        • 1970-01-01
        • 1970-01-01
        • 2016-11-18
        • 1970-01-01
        • 1970-01-01
        • 2013-03-19
        相关资源
        最近更新 更多