有没有办法将一个脚本注入SVN(或其属性..)来通知一个用户提交的应用程序(我正在开发)?

时间:2013-04-03 15:15:21

标签: svn tags release

我正在构建一个与开发人员代码(一个发布管理应用程序)交互的应用程序(与我的导演的会议计划决定我们是否会使用应用程序或eclipse插件)。 因此,我需要知道用户(eclipse上的开发人员)何时进行提交(SVN),以便可以通知应用程序,恢复代码(已提交)并将其应用于某些操作。 所以我的问题是:有没有办法将脚本注入SVN(或其中一个属性),以便它可以通知我的应用程序已完成提交?

2 个答案:

答案 0 :(得分:2)

正如ShiDoiSi指出的那样,可以使用post-commit hook来完成。但是,对subversion存储库所在的文件系统具有写访问权限的用户需要安装它。它可以在任何操作系统上完成。

相反,您可以执行持续集成服务器所执行的操作:轮询存储库(或整个存储库本身)中特定项目的修订,然后根据结果执行操作。尝试命令svn log --xml或类似命令。

答案 1 :(得分:0)

乍一看,您似乎想要至少重新发明Continuous integration (CI)CommitMontior

然而,如果您有一些特殊情况并且确实需要开发Eclipse插件甚至是独立应用程序,Subversion hooks将会有所帮助。

Apache Subversion具有在某些用户操作上执行钩子脚本的功能。你寻找的特定是一个post-commit钩子。基本上你需要编写一个提交后的可执行文件,它会“通知”你要通知的任何内容。每次用户提交到存储库或特定的存储库文件夹/ trunk / branch /等时,您的钩子都会运行并完成它的工作。

无论您使用的是Windows还是Linux BTW都无关紧要;然而,肯定需要一些阅读和研究。我建议你从SVNBook开始。