这是一个颠覆钩子。它为subversion存储库提供了一种保护机制,因此以前提交的“标记”是不可变的。
svnplus的Python项目详细描述
这个python包是subversion的一个钩子,在正常使用情况下不能从命令行运行。很容易安装。
先决条件:
python2.7
subversion
apache/httpd-可选
mod_dav_svn-如果安装了apache,则可选
基本上必须安装一个工作的、可访问的subversion存储库
并安装python,包括pip。
安装分3步进行:
1。pip安装svnplus
2。安装subversion预提交“hook”
2.1cd to/path/to/subversion/repo/<;repo name>;/hooks
2.2放置模块附带的名为“pre commit”的文件,这里
2.2.1不要添加“.py”扩展,否则Subversion将不会
运行它。
2.3 chown apache:apache预提交(或运行
Subversion服务器守护程序的用户/组)
2.4 chmod 750预提交
3。自动生成默认的pre-commit.conf文件(然后可以根据需要编辑该文件)。
3.1cd to/path/to/subversion/repo/<;repo name>;/hooks
3.2./pre-commit--generate>;pre-commit.conf
3.3 chown apache:apache pre-commit.conf(或运行
subversion服务器守护程序的用户/组)
3.4 chmod 640 pre-commit.conf
3.5 edit pre-commit.conf并遵循注释“”)
svnplus tagprotect为
标记“目录提供不可变(一次写入)保护。一个Subversion存储库。这是默认的
受保护目录,所有内容都是可配置的。
此包包含两部分:subversion python
名为“pre commit”的脚本和svnplus python包。subversion
要求使用名称“pre commit”调用此软件,
这是不可更改的。
“pre commit”脚本可以而且应该从命令行
运行以进行配置测试和配置调试。
只需将“pre-commit”
放入
构建Subversion存储库的目录下名为hooks的目录中。确保“预提交”由httpd进程的所有者或服务于subversion的任何守护进程拥有并可执行。
subversion管理员或对
subversion安装目录具有写权限的任何人都可以更改configuration.
################################################################################
# debug value and where svn, and svnlook, 已经安装了
Debug = 0
SnPoPT= =“/Ur/bin /Svn” SnnOclook=“/Ur/bin /SnNolook”< BR/>< BR/> >剩余的配置变量包括N个元组
,这个集合可以按需要重复多次。or blank
PRJDIR_CREATORS = "*" # or comma list, or blank
ARCHIVE_DIRECTORY = "Archive" # directory name
################################################################################
Do not configure directories with trailing slash characters, 如果你做了
它们无论如何都会被丢弃,但是为了避免混淆,不要添加
它们。受保护项目目录变量的配置,
ProtoCdTePrjDRs,必须以与其关联的
受保护父配置(即ProtoCeTd父)完全相同的路径开始。这是为了安全。为了安全起见,在protected_prjdirs变量中找到的/../(或类似)的任何实例都将被丢弃。
每个tag_文件夹值必须是唯一的,并且其中两(2)个或多个不能是彼此的子目录。例如:
先决条件:
python2.7
subversion
apache/httpd-可选
mod_dav_svn-如果安装了apache,则可选
基本上必须安装一个工作的、可访问的subversion存储库
并安装python,包括pip。
安装分3步进行:
1。pip安装svnplus
2。安装subversion预提交“hook”
2.1cd to/path/to/subversion/repo/<;repo name>;/hooks
2.2放置模块附带的名为“pre commit”的文件,这里
2.2.1不要添加“.py”扩展,否则Subversion将不会
运行它。
2.3 chown apache:apache预提交(或运行
Subversion服务器守护程序的用户/组)
2.4 chmod 750预提交
3。自动生成默认的pre-commit.conf文件(然后可以根据需要编辑该文件)。
3.1cd to/path/to/subversion/repo/<;repo name>;/hooks
3.2./pre-commit--generate>;pre-commit.conf
3.3 chown apache:apache pre-commit.conf(或运行
subversion服务器守护程序的用户/组)
3.4 chmod 640 pre-commit.conf
3.5 edit pre-commit.conf并遵循注释“”)
svnplus tagprotect为
标记“目录提供不可变(一次写入)保护。一个Subversion存储库。这是默认的
受保护目录,所有内容都是可配置的。
此包包含两部分:subversion python
名为“pre commit”的脚本和svnplus python包。subversion
要求使用名称“pre commit”调用此软件,
这是不可更改的。
“pre commit”脚本可以而且应该从命令行
运行以进行配置测试和配置调试。
只需将“pre-commit”
放入
构建Subversion存储库的目录下名为hooks的目录中。确保“预提交”由httpd进程的所有者或服务于subversion的任何守护进程拥有并可执行。
subversion管理员或对
subversion安装目录具有写权限的任何人都可以更改configuration.
################################################################################
# debug value and where svn, and svnlook, 已经安装了
Debug = 0
SnPoPT= =“/Ur/bin /Svn” SnnOclook=“/Ur/bin /SnNolook”< BR/>< BR/> >剩余的配置变量包括N个元组
,这个集合可以按需要重复多次。or blank
PRJDIR_CREATORS = "*" # or comma list, or blank
ARCHIVE_DIRECTORY = "Archive" # directory name
################################################################################
Do not configure directories with trailing slash characters, 如果你做了
它们无论如何都会被丢弃,但是为了避免混淆,不要添加
它们。受保护项目目录变量的配置,
ProtoCdTePrjDRs,必须以与其关联的
受保护父配置(即ProtoCeTd父)完全相同的路径开始。这是为了安全。为了安全起见,在protected_prjdirs变量中找到的/../(或类似)的任何实例都将被丢弃。
每个tag_文件夹值必须是唯一的,并且其中两(2)个或多个不能是彼此的子目录。例如: