推荐给好友 上一篇 | 下一篇

Subversion 1.5的合并审计

我们上周将Subversion合并跟踪特性提交到主干的过程很漂亮,Hyrum Wright是GoogleSummer of Code计划的一个学生参与者,他签约来提供合并跟踪的“Merge Auditing”特性,你可以在功能规格上看到一些细节,但实际上它是关于在svn log和blame输出中添加对于合并跟踪信息的智能和意识,在合并跟踪计划中,这是1.5之后的特性,它是任何人希望在码基中看到的特性,但是我们感觉版本的发布和核心功能的优先级更高。

不管怎样,在这种情况下我们可以手到擒来了,Hyrum,我应该将其添加为完全提交者,他在svn log中支持这个功能做出伟大的进展,并且已经将这些修改提交到了trunk,此外,我们为合并跟踪早期采纳程序创建的样例版本库已经帮我们完成了这个特性的操作指南,因此我们有一个文档完好的样例版本库,以及匹配的图像,Hyrum可以用来饮用,它可以帮助他精炼这个特性并使之工作正确。

上面的图像是我们样例版本库的历史,如果你仔细观察,你会发现r14对于trunk的提交是这个特性发生作用的有趣实例,这个提交从分支合并而来,这个合并包含了另一个分支的附加合并,如果我运行这个命令(注意新的-g 选项):

svn log -g -r 14 $REPOS/trunk

Here is the new output:

------------------------------------------------------------------------
r14 | merger | 2007-05-30 15:48:11 -0400 (Wed, 30 May 2007) | 3 lines

Merge branch b - product roadmap and update about page

Command executed: svn merge $REPOS/branches/b
————————————————————————
r13 | buser | 2007-05-30 15:46:48 -0400 (Wed, 30 May 2007) | 1 line
Result of a merge from: r14

Update info about our company
————————————————————————
r12 | merger | 2007-05-30 15:45:19 -0400 (Wed, 30 May 2007) | 3 lines
Result of a merge from: r14

Merge branch a - product roadmap

Command executed: svn merge $REPOS/branches/a
————————————————————————
r11 | auser | 2007-05-30 15:43:00 -0400 (Wed, 30 May 2007) | 1 line
Result of a merge from: r14, r12

Add product roadmap
————————————————————————


需要注意它是如何包含修订版本r14的合并信息,此外,那些修订版本如何使另一个合并的结果。图形客户端,例如我们的CollabNet Desktop - Eclipse EditionTortoiseSVN一定可以在他们的UI中显示有用且有趣的图像。

这是Hyrum梦幻作品,继续努力,我已经等不及看到blame的实现了。

Mark Phippard is Director, Subversion Engineering at CollabNet. He works on the CollabNet Subversion team and is a project owner for the Subclipse project as well as a partial committer for Subversion.


Technorati : , , , , , , , , , , ,



TAG: Subversion subversion
查看全部1条评论

最新评论

 

评分:0

我来说两句