2012-07-11 81 views
0

我有疑问。我想在SVN中进行配置,但我不知道它是否可行。 我有我的项目,每周发布一个新标签,并且必须部署它。建议为svn配置TAG

我记得之前我看到一个SVN仓库,在tags文件夹中有一个名为LAST_UPDATED的标签。

我认为,如果有可能创建一个符号链接,为每个创建的标签更新。

例子:
我最后的标签是/application-1.0.1
当我创建一个标签/application-1.0.2
标签LAST_UPDATED将指向这个新版本。

可能吗?它会导致一些问题吗?
或者还有另一种方法可以在SVN中创建一个文件夹,它始终是我们所做的最新版本?
非常感谢。

回答

1

让我首先让你知道,tags,branchestrunk都只是概念,在SVN中,它们都是简单的副本。

就这么说,SVN标签是分支的快照副本,SVN不会阻止您修改标签的内容。如果您需要,您可以使用预先提交挂钩来处理这个问题。经典使用标签背后的想法是,当您发布软件的第一版时,您可以将代码库复制到标签,并且在发布第2版,第3版等时也可以做到这一点。然后,当你需要它,你可以retreive你的代码是怎么样的版本X.

所以回来您的需要,您应该:

  • 每个版本创建的标签,你已经做,并跟踪哪个是当前版本的另一个系统。如果您的标签命名习惯足够简单,脚本可以轻松浏览所有标签以检索最后一个。

  • 或使用stable分支,其中您始终拥有当前版本代码。然后,您每天提交到另一个分支(可以是trunk或每个新功能的特殊分支),并将已验证的更改合并到stable分支。当版本发布时,可以从这个分支创建一个标签。

0

你可以做的是这样的,例如:

svn cp trunk tags/application-1.0.2 
svn delete tags/LAST_UPDATED 
svn cp tags/application-1.0.2 tags/LAST_UPDATED 
svn ci -m"New production tag" 

第一次就不需要删除tags/LAST_UPDATED,当然。