提交某些文件的SVN通知

时间:2012-02-17 15:23:37

标签: svn

是否有Subversion工具可以在更改提交给某些文件时自动通知我?

3 个答案:

答案 0 :(得分:2)

您可以在提交时创建一个post-commit hook script来“挂钩”。

在钩子脚本中,您可以使用SVNLOOK实用程序检查更改集,查看更改内容,然后如果符合您的条件,请执行某些操作。

钩子脚本(例如提交后)存储在这里:
\钩\-commit.bat交

你会像SVNLOOK一样使用:
svnlook changed -r%REV% %REPOS% | <find_or_grep> <filename>

然后编写脚本代码,以便如果find / grep成功,则执行操作。

Windows和Linux的情况相同,只是语法略有不同。

答案 1 :(得分:2)

如果你在Windows上,你可能正在寻找一个简单的系统托盘程序,例如SVN Notifier

我最近自己尝试过,发现它快速有用:易于设置,无需编写脚本。

它可以监控SVN中的单个文件或整个目录。

我遇到的唯一问题是它依赖于要检出的文件/文件夹的签出副本,而不是直接指向repo。最新版本的SVN Notifier与TortoiseSVN 1.7集成在一起,签出的副本必须通过Subversion 1.7完成。这对我来说是个问题,因为我的项目工作区当前在Eclipse IDE中使用兼容Subversion 1.6的SVNKit连接器进行了检查。因此,为了使用SVN通知程序,我必须升级/替换我的IDE中的SVN连接器(这并非总是可行),或者使用Subversion 1.7签出第二个副本以进行监视(这意味着维护两个工作副本而不是一个)

答案 2 :(得分:1)

你需要写a hook for the commit operation。在那个钩子里,你可以做任何你想做的事情(即在想要的文件改变时通知)。