我们有一个用ASPNET3.5构建的自定义项目管理工具,我们使用VisualSVN进行版本管理。然而,我们正在寻找一种方法,通过将VisualSVN与我们的项目管理工具集成在一起,通过项目管理工具报告版本更改,即非常类似于基于Trac python的配置管理工具提供的功能。
主要是寻找一个简单的VisualSVN客户端应用程序接口,能够检测和报告基于提供的修订集的文件更改。
发布于 2008-11-14 08:55:20
还有一个封装了整个Subversion 1.5客户端应用程序接口的SharpSvn。它是在Apache2.0许可下授权的,它来自CollabNet。
发布于 2008-11-14 07:56:40
我认为对于Subversion客户端系统库的.NET绑定来说,Check Svn.NET是目前最好的解决方案。
发布于 2009-05-05 23:40:20
如果您对某些脚本编写感到满意,可以使用svnlook,这是一个提供更改和存储库修改报告的工具。
我在提交后钩子中使用它来将所有文件的更改发送到我的bugtracker,这样它就可以显示哪些文件在给定修订号的情况下发生了更改。我将一个特定的文本添加到日志中,然后它会拾取该文本,以便知道将数据与哪个bug相关联。
根据请求进行编辑,此perl脚本从提交后钩子调用:
$url = `svnlook log -r $ARGV[1] $ARGV[0]`;
# check the string contains the matching regexp,
# quit if it doesn't so we don't waste time contacting the webserver
# this is the g_source_control_regexp value in mantis.
exit 1 if not $url =~ /\b(?:bug|issue|mantis)\s*[#]{0,1}(\d+)\b/i;
$url = $url . "---\nSVN Revision: " . $ARGV[1];
$url = $url . "\n" . `svnlook dirs-changed -r $ARGV[1] $ARGV[0]`;
#urlencode the string
$url =~ s/([^\w\-\.\@])/$1 eq " "?"+": sprintf("%%%2.2x",ord($1))/eg;
print "log=$url";
exit 0;这将写入postcommit_mantis.txt文件,该文件通过curl发送给Mantis:
d:\tools\curl -s -d user=svn -d @c:\temp\postcommit_mantis.txt http://<server>/mantis/core/checkincurl.phphttps://stackoverflow.com/questions/289443
复制相似问题