在Clearcase中,我可以生成一个“标签”,用于给定文件集,并始终可以返回到该标签,重新生成所有文件,就好像生成该标签时一样。
我应该如何在Subversion中完成此操作?我正在使用Tortoise前端[Windows]连接SVN,但我不确定如何实现此功能。
在Clearcase中,我可以生成一个“标签”,用于给定文件集,并始终可以返回到该标签,重新生成所有文件,就好像生成该标签时一样。
我应该如何在Subversion中完成此操作?我正在使用Tortoise前端[Windows]连接SVN,但我不确定如何实现此功能。
事实上,在SVN中每个提交都会创建一个标签。您可以在任何时候回到每个修订版本(提交)。
从理论上讲,一个分支和一个标签之间没有区别。只是分支会被进一步开发,并与不同开发人员的提交合并,而标签则不应被任何人提交。
标签通常会给予更详细的名称,如RC 1.5-在这一天,它最终似乎是稳定的。
这就解释了为什么Tortoise中的创建分支/标签是一个功能。
而基本上,svn 只是在另一个目录(例如标签)中创建最后一次修订的副本。这个副本当然不是完整的,而是一个普通的 diff,因此有连续的修订号码。
在Subversion中,标签的等效物是“标记”(即在文件夹中创建一个分支,以特定的目的标记一个修订)。在repo-browser中,右键单击,“复制到...”,然后选择一个新文件夹名称。
将此翻译成中文:http://svnbook.red-bean.com/en/1.5/svn.branchmerge.tags.html http://svnbook.red-bean.com/en/1.5/svn.branchmerge.tags.html
Tags
是 Subversion 中标签的等效物。
标签是通过复制
命令或在TortoiseSVN的 分支/标签
菜单选项中创建的。
按照惯例,标签
会被复制到Subversion仓库中的标签
路径下。
顺便提一下,TortoiseSVN帮助文档真的做得很好 - 《每日使用指南》非常有帮助。
你可以用两种方法来做这件事。
提交文件的当前状态,现在您可以随时“还原”到此版本并恢复您的文件状态。
创建一个新的标签,并继续在主干上工作。
使用svn复制功能,在标签文件夹中创建一份副本。这更多是惯例而非其他,但大多数存储库都会有名为主干(trunk)、标签(tags)和分支(branches)的文件夹。
Don t worry about creating extra copies - it s not really duplicating all those files -- copies are cheap in subversion.
例如:
svn copy /trunk/foo /tags/foo-1.0