1

我对 SVN 的东西还很陌生,但我正在掌握它。基本上我已经在 Eclipse 中创建了一个项目,我们在计算机上本地保存了项目的 2.1、2.2 和 2.3 版本。我已经为第一个(2.1)设置了我的服务器存储库,所以它位于主干文件夹中,并且有一个标记版本(标记 2.1),但是我怎样才能添加 2.2 和 2.3,所以他们;可以添加到tag文件夹中,然后我们就可以使用2.3作为主干版本了:

我们的存储库结构看起来像这样只是为了给你们一个视觉,因为我的解释不是最清楚的:

RepositoryLocation/

CoreFiles/
trunk
tags

CoreWeb/
trunk
tags

etcFolders/
trunk
tags

(每个项目中大约有 9 个不同的文件夹)

我们很确定我们希望项目中的每个文件夹都有一个主干/标签,在做了一些研究之后,我们认为这将使将来更改某些区域更容易。但是我们不确定现在如何将 2.2、2.3 项目和所有相关文件夹添加到标签中,项目中的文件夹结构完全相同,因此无法想象如果掌握正确的知识会太困难。欢迎任何评论,如果在描述时这不是最清楚的,我们深表歉意。

4

2 回答 2

2

如果项目从一开始就在 SVN 中,您将拥有以下内容:

trunk ------------------------------------------------------------------->
         \_ v2.1 tag             \_v2.2 tag          \_v2.3 tag

其中每个-代表主干中的一个新提交。

如果您想重新创建此历史记录,请从您拥有的主干开始,其中包含 v2.1 中的代码。然后,在您的工作副本中,将所有文件替换为 2.2 版中的文件,提交,然后标记。然后用 2.3 版中的文件替换所有文件,提交,然后标记。

假设您使用的是最新版本的 SVN,它的根目录下只有一个 .svn 文件夹。用新文件替换旧文件时不要删除此文件夹。

于 2012-12-14T12:47:17.097 回答
1

@JB 的后续行动:

如果 CoreFiles + CoreWeb + etcFolders形成项目,您最好在 repo 的根目录中拥有单个主干/分支/标签树(因此 - 复制整个项目)

如果 CoreFilesCoreWebetcFolders 是独立项目,但它们作为子项目的组合产生superproject,您可以拥有当前树(但您在每个基础项目中都忘记/branches了),但也可以使用外部创建“组合超级项目”(在这个 repo 的根目录中)或 /better/ 在新的单独存储库中)

于 2012-12-14T13:34:16.620 回答