linux svn怎么更新文件,linux安装SVN以及同步更新到项目上

1、安装svn服务端:yum install subversion

2、进入目录,准备创建svn目录:cd /usr/local/

3、创建一个svn目录:mkdir svnRepo

4、修改目录权限为777: chmod -R 777 svnRepo

5、创建一个svn版本仓库test(test可以随便起名字):svnadmin create/usr/local/svnRepo/test

6、进入first版本仓库下的配置文件目录:cd svnRepo/test/conf

7、修改svnserve.conf:

anon-access = none   //默认是只读read

auth-access =write    //认证后有写入权限

password-db =passwd   //帐号密码配置文件

authz-db = authz   //权限配置文件

realm = test   //改成自己的版本库生效范围

8、修改authz:

[group]

first= ddl,shl   //创建一个first的组,并制定两个用户ddl和shl

[/]

//制定根目录下的权限

@first = rw//first组用户权限为读写* = r     //其他用户只有读权限

9、修改passwd:

[users]

ddl=123456     //用户名 = 密码

shl =123456

10、设置自启动:vim /etc/rc.local

添加:svnserve -d -r /usr/local/svnRepo/test

查找是否有svn的进程:ps aux |grep 'svn'

杀死2505这个查找到的svn进程:kill -9 进程号

启动svn: svnserve-d -r /usr/local/svnRepo/test  (可以把这个放到/etc/local/rc.local文件中,实现开机自启动)

查看svn信息:netstat -anp|grep svnserve

现在用客户端checkout应该就可以了

11、进入svn仓库hooks文件下:cp post-commit.tmpl post-commit

然后打开文件清空内容,修改为以下代码:

#!/bin/sh

export LANG=zh_CN.UTF-8

/usr/bin/svn update --username **** --password **** /var/www/test

其中第一行意思是:用sh来解析这个脚本,因为各种shell的语法有细微的差别

第二行是编码格式:这里我使用的是UTF-8

最后一行/usr/bin/svn是svn的路径,不是项目路径,应该都是一样的,后半句分别是用户名、密码、和项目路径。--username这个比较坑了,网上搜出来的很多都搞错了,前面其实是两个减号,英文输入法下的。

12、修改post-commit的可执行权限:chmod 755 post-commit

13、在服务器进入项目目录/var/www/testcheckout 整个项目。

注意此处不要checkout文件夹,正确代码应该是这样:

svn checkout svn://{服务器地址}:{端口号}/test .//注意目录后面还有一个点

注意:此处的/test 可不需要添加:( 添加的目的是为了实现多个项目。)

svn checkout svn://{服务器地址}:3690 .//注意目录后面还有一个点

至此,如果按照此步骤搞下来,应该已经没有问题了,你可以本地commit代码,自动同步到项目了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值