SVN 自动添加属性设置

来源:互联网 发布:日本人知日本语第二部 编辑:程序博客网 时间:2024/05/16 14:21
问题提出:
    我们在用svn管理代码时候,有时候我们需要在java代码里添加上该文件的版本信息、最后修改日期、最后修改用户等信息。
而这个又不能每次把文件提交到svn上时,更改这些信息。
解决方法:
    幸好svn有一个自动属性的功能,即给给该文件添加一些属性,比如svn:keywords,添加该文件的关键字,这样在该文件内容里就会识别该关键字,而把关键字的地方替换成svn服务器上的相应属性。
比如:
  1.     我现在在svn控制目录下创建一个文件”自动属性.txt"
  2. 往里面添加内容为:
    txt代码
    1. $Id$  
    2. $Date$  
  3. 把该文件添加到svn版本控制中(add,commit),此时txt中的内容还是:
    txt代码
    1. $Id$  
    2. $Date$ 
  4. 点击自动属性.txt的属性 ,弹出属性的对话框。在subversion选项卡上选择properties,添加一个svn:keywords属性:LastChangedDate LastChangedRevision
    Id Date  各属性之间用空格隔开。
  5. 把“自动属性.txt”再commit到服务上去,这时“自动属性.txt”的文件内容就添加了svn服务器上的相应属性(注“自动属性.txt”的的编码必须为utf-8,否则中文会出现乱码)
    txt代码
     
    1. $Id: 自动属性.txt 2543 2007-12-28 06:52:06Z chen_xk $  
    2. $Date: 2007-12-28 14:52:06 +0800 (星期五, 28 十二月 2007) $  
  6. 但是这样必须每次要往svn服务器添加一个文件时,都要设置该文件的属性,有没有一个全部设置的方法,后来终于发现在一个方法: 修改C:/Documents and Settings/Administrator/Application Data/Subversion/config文件,Administrator是windows用户名,添加(注:#表示注释,该把#去掉)
    txt代码
    1. enable-auto-props = yes  
    2. [auto-props]  
    3. *.java = svn:keywords=Date Rev Id  
    4. *.txt = svn:keywords=LastChangedDate LastChangedRevision  
  7. 这样就大功告成。

<script type="text/javascript">&lt;!--google_ad_client = &quot;pub-4348265167276910&quot;;/* 468x60, 个人博客 */google_ad_slot = &quot;2046406163&quot;;google_ad_width = 468;google_ad_height = 60;//--&gt;</script><script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>