svn属性svn:keywords与auto-props的配置(运行配置区)

来源:互联网 发布:网络攻击技术 编辑:程序博客网 时间:2024/05/16 08:17

 来源:http://www.scmbbs.com/cn/svntp/2008/5/svntp28.php
   规范的代码在开头往往都有作者、修改日期、版本号、原始位置等信息。
   大多数开发者都习惯自己手工维护这些信息。现在告诉你一个好消息是,通过设置svn关键字属性:svn:keywords可以实现此目的,你再也不用手工维护了,svn会自动帮你维护。如何实现呢?有两个途径:
(一)用命令设置文件属性的方式
目前支持5个关键字:Date(修改时间)、Revision(版本)、Author(提交者)、HeadURL(库路径)、Id(前面4个的组合)
首先要告诉svn你这个文件需要替换关键字:

$ svn propset svn:keywords "Date Author" weather.txt
property 'svn:keywords' set on 'weather.txt'
$


上面命令设置了文件weather.txt的关键字属性。只要该文件中出现
$Date$ 和 $Author$ 字样都会被自动替换成修改时间和提交者用户名。

在文件weather.txt中添加如下字样测试:

$Date$
$Author$
ddddddddd


然后commit,再打开看看,变成了如下样式:

$Date:2008-06-17 06:08:43Z  $
$Author: xuejiang $
ddddddddd



可见已被替换。

(二)用运行配置区进行设置
如果你觉得上面的操作太麻烦,希望所有的文件(某类型)都自动进行替换,而不是对每个文件都运行如上命令,那么你可以通过设置运行配置区来实现。
  运行配置区分用户配置区和系统配置区。用户配置区只对用户的工作目录起作用,系统配置区对所有的svn库起作用,如果设置了系统配置区就不用每个人在自己的用户配置区中进行配置了。
  用户配置区的设置目录在home个人主目录(类unix系统) ~/.subversion 下,有三个文件:config、servers、README.TXT
一般配置config文件就可以了。
  系统配置区在服务器端的/etc/subversion 下,一般都需要手工创建这个目录,然后从个人配置区里面拷贝三个文件过来。
  
   配置如下:
打开config文件:vi config
找到#enable-auto-props = yes 这一行,去掉前面的注释符“#”号;
然后在文件最后([auto-props]小节)添加一行:
*.php = svn:keywords=Id  (这一行的意思是对所有php后缀文件设置Id关键字,你也可以设成其他关键字)
然后保存退出。

这时候就设置完了。
此时,所有新加的php文件,如果含有"$Id$"字符都会被替换。

原创粉丝点击