构建项目时,我使用svn copy命令标记源代码。查看中继的历史记录时,我看不到这些标记的日志消息。我希望在trunk中看到每个发布版本的日志消息。
我希望能够轻松查看每个版本中的更改。现在我需要返回并找到每个标签的修订号,并在查看日志时手动跟踪该号码。
如果我可以运行另一个命令在标记发生后向trunk添加日志消息,我甚至会很高兴。但是,我无法找到一种方法来在日志中显示每个文件的消息,因为标签后没有文件更改。
答案 0 :(得分:2)
我想你想看一下“消息”参数
http://svnbook.red-bean.com/en/1.0/re07.html
svn copy .... --message(-m)TEXT
编辑:
没关系。那不是你想要的。你想看看后备箱,看看你制作了什么副本/标签......你可以这样做:
svn list --verbose 例如 svn list --verbose file:/// repository_name / tags
但最终我认为你回答了自己的问题。在某个地方保留一个文本文件,并在构建过程中使用标记名称自动附加到该文本文件,然后使用标记/标签的注释进行检查。
我在之前的公司做过类似的事情。构建脚本有自己的用户登录SVN并在版本文件中签入。
即。 /Project/Builds/builds.txt
包含标签版本列表。您可以附加到它或覆盖它。由于它是版本化的,因此覆盖它并不重要。对于CI /许多构建,它可能有助于防止它变得如此庞大。
修改
在文本文件中放置修订版本和与之关联的标记名称。 您还要检查该文件,以便假设每个标记的构建都是tag-revision-n +1。
答案 1 :(得分:1)
在分支/标记上,使用svn log --stop-on-copy -v。底部条目将显示您最初复制的位置:修订版。
有关详情,请参阅http://blank.jasonwhaley.com/2008/12/subversion-t-where-and-what-revision.html。
答案 2 :(得分:1)
在subversion中,您通常不会向主干添加消息,而是向分支添加消息。 (因为您实际上没有通过创建分支/标记来更改主干)。如果你真的想将日志消息添加到trunk,你应该在trunk上改变一些东西。
要为此使用相同的消息和修订,您需要做一些特殊的事情(或者在包含主干和新分支的工作副本中执行所有操作)。
使用svnmucc你可以做:(当你看到反斜杠时行继续)
svnmucc \
cp 1234 http://srv/svn/project/trunk http://srv/svn/project/tags/release \
propset last-tag ^/tags/release http://srv/svn/project/trunk \
-m "The log message"
(svnmucc代表Subversion的多URL命令客户端,在大多数颠覆版本中都可用)
这可以在一次提交中完成所有这些:
last-tag属性可以替换为其他内容;但这只是对行李箱进行非常小的改动的一个例子。