Linux环境下的SVN创建新的项目
一、前置条件:
1)有安装了linux系统的服务器,123.*.*.29
2)服务器上安装了svn,本人服务器的svn的数据安装的目录地址:/application/svndata
二、创建新的svn项目:
1)进入到linux服务器。可以是root的的目录下
2)创建仓库的命令:svnadmincreate /application/svndata/iReportTest (本次建立的项目名称为iReportTest,为了练习iReport+JasperReport生成表报用);
3)进入到新的项目的conf目录下:cd /application/svndata/iReportTest/conf
4)修改passwd文件:(添加用户名)vi passwd
[users]
# harry = harryssecret
# sally = sallyssecret
chenjie = Chenjie
5)修改svnserve.conf 文件;(修改配置文件)vi svnserve.conf
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
6)停止svn
killall svnserve
7)启动svn项目
svnserve -d -r /application/svndata/
三、部署项目到Svn上面
1)、搭建好svn之后,并且可以正常在本地checkout 项目之后,在项目里面也chekcout 代码一遍
svn co svn://localhost/www --username gan --password 123456
项目目录里面也应该会生成一个.svn文件(这个文件是隐藏文件)
2)、配置hooks 目录下面的 post-commit文件,如果没有话,则复制一份 post-commit.tmpl 进行修改
在/opt/svn/repos/hooks目录下打开post-commit文件,屏蔽里面所有的未屏蔽代码,在文件最后写入:
cd /home/www
/usr/bin/svn cleanup
/usr/bin/svn up /home/www --username "gan" --password "123456"
我的服务器上面的代码是这样的:
REPOS="$1"
REV="$2"
mailer.py commit "$REPOS" "$REV" /path/to/mailer.conf
export LC_CTYPE=zh_CN.UTF-8
/usr/bin/svn up /mnt/www --username "gan" --password "123456"
个人感觉最重要的是:/usr/bin/svn up /mnt/www --username "gan" --password "123456"这句话!
OK,最后保存退出
//2017-09-29使用的钩子
#!/bin/sh
REPOS="$1"
REV="$2"
export LANG=en_US.UTF-8
SVN_PATH=/usr/bin
WEB_PATH=/home/wwwroot/www.srx688.com
SVN_USER=sosngabcd
SVN_PASS=srsx1s8s8abcd
LOG_PATH=/tmp/svn.log
echo `date "+%Y-%m-%d %H:%M:%S"` >> $LOG_PATH
echo `whoami`,$REPOS,$REV >> $LOG_PATH
$SVN_PATH/svn update $WEB_PATH --username $SVN_USER --password $SVN_PASS --no-auth-cache >> $LOG_PATH
exit 0