我正在寻找一种方法来轻松列出 subversion 中两个 URL 之间的更改,列出已更改的文件、何时、谁和为什么。
使用 Totoise 要么给你太多细节,显示实际的源代码更改,要么太少,即它列出了没有原因、时间和原因而更改的文件(“消息”)。
我试图总结两个标签/发布之间的变化
我正在寻找一种方法来轻松列出 subversion 中两个 URL 之间的更改,列出已更改的文件、何时、谁和为什么。
使用 Totoise 要么给你太多细节,显示实际的源代码更改,要么太少,即它列出了没有原因、时间和原因而更改的文件(“消息”)。
我试图总结两个标签/发布之间的变化
你介意使用命令行客户端吗?您可能必须安装它。
C> REM Doing below, so it'll fit in the comment box
C> set PROJ_URL=http://svn/repo/proj1
C> svn diff --summarize %PROJ_URL%/tags/REL-1.0 %PROJ_URL%/tags/REL-2.0
这将向您展示两个 URL 之间的区别,而无需深入的程序细节。
如果您正在谈论在两个修订之间记录日志(查看谁更改了什么等),您可以使用svn log -v --stop-on-copy
来查找该标签的修订和来源:
C> svn set PROJ_URL=http://svn/repo/proj1
C> svn log -v --stop-on-copy %PROJ_URL%/tags/REL-1.0
r72342 | weintraubh | 2010-12-01 13:02:00 -0500 (Wed, 01 Dec 2010) | 2 lines
Changed paths:
A /tags/REL-2.0 (from /trunk:72399)
Release 2.0
r74384 | weintraubh | 2010-12-01 13:02:00 -0500 (Wed, 01 Dec 2010) | 2 lines
Changed paths:
A /tags/REL-2.0 (from /trunk:74383)
Release 2.0
啊! 我们现在看到两个标签都来自主干,REL-1.0 是修订版 72399,REL-2.0 是修订版 74383
C> svn log -r72399:74383 -v
[listing of all changes...]
我实际上编写了一个 PHP 脚本来执行此操作,因此我可以自动生成一个列出差异的网页。我会收集已更改的程序和 Jira 缺陷。
不幸的是,我被那家公司解雇了,几周后它就破产了。(对公司的道德:让我下岗,风险自负。)我无法为您提供实际的 PHP 代码。然而,我只花了几天的时间来写,我什至不知道 PHP。