svnchanged_export.py 导出svn版本其间的变更文件

svnchanged_export.py 导出svn版本之间的变更文件

 

 


======================= 1 基于red hat6.0上自带的python2.6.5安装pysvn1.7.6

查看os版本方法
# lsb_release -a

查看python版本方法
#  python
Python 2.6.5 (r265:79063, Jul 14 2010, 11:36:05)

#  whereis python
python: /usr/bin/python /usr/bin/python2.6-config /usr/bin/python2.6 /usr/lib/python2.6 /usr/lib64/python2.6 /usr/include/python2.6 /usr/share/man/man1/python.1.gz

pysvn官网:
http://pysvn.tigris.org/project_downloads.html





======================= 2 安装pysvn前的准备

 

 

 

-------------2.1 挂载nfs

 

其实和以前的centos5没啥区别,只不过centos的安装是选mini的还真够mini的,啥都要自己yum。这不连nfs都默认不装了。
mount -t nfs 192.168.1.1:/nfs1 /mnt/nfs
直接提示

mount: wrong fs type, bad option, bad superblock on 192.168.1.1:/nfs1,
       missing codepage or helper program, or other error
       (for several filesystems (e.g. nfs, cifs) you might
       need a /sbin/mount.<type> helper program)
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

需要安装下相关的软件包
yum -y install nfs-utils nfs-utils-lib

这时再尝试依然会出错

mount.nfs: rpc.statd is not running but is required for remote locking.
mount.nfs: Either use '-o nolock' to keep locks local, or start statd.
mount.nfs: an incorrect mount option was specified

原因是rpcbind没启动
chkconfig –list看见是默认启动的,应该是刚装后没启动,手工启动下。
/etc/rc.d/init.d/rpcbind start
然后再
mount -t nfs 192.168.1.1:/nfs1 /mnt/nfs 就正常了

 

 

 

-------------2.2 挂载nfs


#service portmap start
#mount 192.168.1.216:/mnt /mnt
#mount -l

 

# ll /mnt/



#vim /etc/yum.repos.d/local.repo

[Server]
name=Server Directory
baseurl=file:///mnt/rhel6_64/Server
enabled=1
gpgcheck=0

 

 

-------------2.2 准备安装pysvn其它包

#yum search apr
#yum install apr-devel.x86_64

#yum search apr-util
#yum install apr-util-devel.x86_64

清除自带的subversion
#yum remove subversion*

rpm下载安装subversion subversion-devel
#rpm -ivh subversion-1.6.11-2.el6_1.4.x86_64.rpm
#rpm -ivh subversion-devel-1.6.11-2.el6_1.4.x86_64.rpm

 

 


======================= 3 安装 pysvn

    wget http://pysvn.barrys-emacs.org/source_kits/pysvn-1.7.6.tar.gz

    tar zxvf  pysvn-1.7.6.tar.gz
    cd pysvn-1.7.6/Source
    python setup.py configure
    make

    \cp -a pysvn /usr/lib/python2.6
    \cp -a pysvn /usr/lib64/python2.6
    \cp -a pysvn /usr/include/python2.6

mkdir -p /usr/local/lib/python2.6/pysvn
cp -a pysvn/* /usr/local/lib/python2.6/pysvn



测试:
#!/usr/bin/python
import pysvn
client=pysvn.Client()
client.update('/data/website/')


# chmod +x test.py
# python test.py



======================= 4 测试svnchanged_export.py 

 

 

wget http://svn-script.googlecode.com/svn/trunk/tools/svnchanged_export.py 


执行
# python svnchanged_export.py -r 7490:7495 --username zheng.dl --password 111111 http://192.168./trunk/06-程序源码/01-源码 /tmp/test/