svn - 如何从主干正确创建 SVN 标签?

标签 svn tags

我正在 Subversion 创建我的第一个项目.到目前为止我有

 branches
 tags
 trunk

我想我立即需要使分支变得单一并重新开始。 更新分支 是常态。

我一直在做主干工作并将内容移动到标签如下。
mkdir tags/1.0
cp -rf trunk/* tags/1.0
svn add tags/1.0
svn commit -m " create a first tagged version"

我的直觉告诉我这是完全错误的,我应该使用 svn copy 维护文件之间的某种关系。 .我以这种方式创建的文件彼此之间没有关系,而且我肯定会错过 Subversion 的功能。我说得对吗?

我应该为单个文件使用 svn copy 吗?
mkdir tags/1.0
svn add tags/1.0
svn copy trunk/file1 tags/1.0
svn copy trunk/file2 tags/1.0
svn copy trunk/file3 tags/1.0
svn commit -m " create a first tagged version"

我应该在整个目录上使用 svn copy 吗?
svn copy cp -rf trunk tags/1.0
svn commit -m " create a first tagged version"

最佳答案

你是对的,将文件添加到标签文件夹是不“正确的”。

你已经猜对了 copy是要使用的操作;它让 Subversion 跟踪这些文件的历史记录,并且(我假设)更有效地存储它们。

根据我的经验,最好复制整个项目(即来自根 checkout 位置的所有文件)的副本(“快照”)。这样快照就可以独立存在,作为整个项目在特定时间点的状态的真实表示。

This part of "the book"显示了该命令的通常使用方式。

关于svn - 如何从主干正确创建 SVN 标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/851377/

相关文章:

php - 如何使用带有 crontab 的 svn 更新代码?

html - 标题标签文本显示在 Chrome 中的图像上

html - 这可能吗? .classname ,div,td {}

svn - 如何使用 Tortoise SVN 从 google code 获取源代码?

windows - 读取日志文件并获取列中的行而不是行

git - 所有 svn 修订号的映射 <=> git SHA-1 提交哈希

Apache Lucene 存储库的 SVN 转储

PHP正则表达式删除所有异常的javascript

html - 如何将文本与其他文本水平对齐?

c - c函数中WINAPI标签的专有名称是什么?