SVN标志主要版本

时间:2020-03-06 14:26:07  来源:igfitidea点击:

抱歉,我是SVN的新手,为此我浏览了一下。如何在SVN中标记主要版本,有点像设置还原点。现在,我只是设置服务器并添加了所有文件我一直在间歇地提交不同的更改。当我的东西处于稳定状态时,有什么方法可以标记出来,以便在需要时可以轻松地恢复到原来的状态?

解决方案

听起来我们正在寻找标签。

Subversion书中的标签

"标签只是时间上项目的快照"

检查标签

典型的方法是在存储库的根目录中创建一个" tag"目录,然后将整个中继复制到该目录中。 (在Subversion中复制很便宜,因为它只是添加对现有文件特定修订的引用。)

所以你可能会说:

svn cp http://svn.example.com/trunk/ http://svn.example.com/tags/major-revision-01/

有关更多信息,请参见Subversion书籍,尤其是标签一章。

尝试阅读此页面svn copy。基本上你只需要做一个svn副本

如果使用的是svn标准结构,则应该有一个分支,标签和主干文件夹。

我们要做的是将当前中继的副本复制到标签中的文件夹中。

命令行示例:

svn复制mysvnurl / myproject / trunk mysvnurl / myproject / tags /主要版本_01

在CVS中,这称为"标签"。 SVN不会为标签使用单独的机制,它只是创建一个分支。因此,只需创建一个新分支,并为其提供一个描述性名称,例如" release-1.2"。

另外,懒惰的方法是在文本文件中写下当前的存储库修订版号;)

我们要做的就是创建一个分支。我们有标准的根目录:中继,标签,发行版,分支。

要记住的主要事情是,所有分支都像创建副本一样,而干线之外的所有分支都像创建副本一样(只是它是浅副本,仅复制增量)。

对我们来说,所有开发工作都在主干中完成。如果某人正在做重大返工,则倾向于将其放在分支中。主要发行版放入发行版中,我们要标记的所有其他标签和项目都放在标记文件夹中。

对于我们的发行版,我们具有以下目录结构:

repository
+--trunk
+--releases
  +--v1.0
  +--v1.1
  +--v1.4
  +--v2.0
+--branches
+--tags

这是另一个有用的想法。使用CruiseControl(或者CruiseControl.NET)以固定的时间间隔(即每晚或者每15分钟一次)自动标记

立即获取构建过程!