1.start-commit:开始提交的通知

描述:
start-commit在开始事务之前执行,通常是用来确定用户是否有提交权限。
如果start-commit钩子程序返回非零值,提交就会在创建之前停止,标准错误的任何输出都会返回到客户端。
输入参数:
传递给你钩子程序的命令行参数,按照顺序是:
a.版本库路径
b.认证过的尝试提交的用户名
作用:
访问控制

2.pre-commit:在提交结束之前提醒

描述:
pre-commit hook在事务完成提交之前运行,通常这个钩子是用来保护因为内容或位置(例如,你要求所有到一个特定分支的提交必须包括一个bug追踪的ticket号,或者是要求日志信息不为空)而不允许的提交。
如果pre-commit钩子返回非零值,提交会退出,提交事务被删除,所有标准错误的输出返回到客户端。
输入参数:
传递给你钩子程序的命令行参数,按照顺序是:
a.版本库路径
b.提交事务的名称
作用:
修改确认和控制

3.post-commit:成功提交的通知

描述:
post-commit hook在事务完成后运行,创建一个新的修订版本。大多数人用这个钩子来发送关于提交的描述性电子邮件,或者作为版本库的备份。
post-commit钩子程序的返回值和输出被忽略。
输入参数:
传递给你钩子程序的命令行参数,按照顺序是:
a.版本库路径
b.提交创建的版本号
作用:
提交通知,工具集成

4.pre-revprop-change:修订版本属性修改的通知

描述:
pre-revprop-change钩子在修订版本属性修改之前,正常提交范围之外被执行,不像其他钩子,这个钩子默认是拒绝所有的属性修改,钩子必须实际存在并且返回一个零值,这样属性修改才能实现。
如果pre-revprop-change钩子没有实现或返回一个非零值,对属性的修改就不会成功,所以的标准错误输出会返回到客户端。
输入参数:
传递给你钩子程序的命令行参数,按照顺序是:
a.版本库路径
b.要修改属性的修订版本
c.企图修改属性的认证用户名
d.属性名称已修改
e.变更描述:A (添加的),D (删除的)或M (修改的)
此外,Subversion通过标准输入将属性值传递给钩子程序。
作用:
访问控制,修改确认和控制

5.post-revprop-change:修订版本属性修改成功的通知

描述:
post-revprop-change钩子会在修订版本属性修改后立即执行,在提交范围之外。可以从其对应物pre-revprop-change知道,如果没有实现pre-revprop-change钩子就不会执行。它通常用来在属性修改后发送邮件通知。
post-revprop-change的返回值和输出会被忽略。
输入参数:
传递给你钩子程序的命令行参数,按照顺序是:
a.版本库路径
b.已经修改属性的修订版本
c.做出修改的认证用户名
d.属性名称已修改
e.变更描述:A (添加的),D (删除的)或M (修改的)
此外,Subversion通过标准输入将属性的前一个值传递给钩子。
作用:
属性修改通知

6.pre-lock:路径锁定尝试的通知

描述:
这个钩子会在每次有人尝试锁定文件时执行,可以防止完全的锁定,或者用来指定控制哪些用户可以锁定特定路径的复杂策略,如果钩子发现已存在的钩子,也可以决定是否“窃取”这个钩子。
如果pre-lock钩子返回非零值,锁定动作会退出,并将标准错误返回到客户端。
输入参数:
传递给你钩子程序的命令行参数,按照顺序是:
a.版本库路径
b.将要锁定的版本化路径
c.尝试锁定的认证用户名
作用:
访问控制

7.post-lock:成功锁定路径的通知

描述:
post-lock在路径锁定后执行,通常用来发送锁定事件邮件通知。
post-unlock钩子程序的输出和返回值会被忽略。
输入参数:
传递给你钩子程序的命令行参数,按照顺序是:
a.版本库路径
b.锁定路径的认证用户名
此外,锁定路径通过标准输入传递给钩子程序,每行一个路径。
作用:
加锁通知

8.pre-unlock:路径解锁尝试的通知

描述:
这个钩子在某人企图删除一个文件上的钩子时发生,可以用来制定哪些用户可以解除文件锁定的策略。制定破坏锁定的策略非常重要,如果一个用户A锁定了一个文件,允许用户B打开这个锁?如果这个锁已经一周了呢?这种事情可以通过钩子决定并执行。
如果pre-unlock返回非零值,解锁过程就会退出,标准错误返回到客户端。
输入参数:
传递给你钩子程序的命令行参数,按照顺序是:
a.版本库路径
b.将要锁定的版本化路径
c.尝试锁定的认证用户名
作用:
访问控制

9.post-unlock:路径成功解锁的通知

描述:
post-unlock在一个或多个路径已经被解锁后执行,通常用来发送解锁事件通知邮件。
post-unlock钩子程序的输出和返回值会被忽略。
输入参数:
传递给你钩子程序的命令行参数,按照顺序是:
a.版本库路径
b.路径解锁的认证用户名
此外,解锁路径通过标准输入传递给钩子程序,每行一个路径。
作用:
解锁通知