Linux下SVN安装与基本操作

Posted 甄嬛吃啥呦

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux下SVN安装与基本操作相关的知识,希望对你有一定的参考价值。


1.安装svn

linux下通过yum安装svn

yum -y install subversion

本地Windows系统安装TortoiseSVN

2.配置

建立版本库目录

mkdir /home/svnlib

启动SVN服务进程,以/home/svnlib为根目录

svnserve -d -r /home/svnlib

3.建立项目版本库

创建一个新的Subversion项目

svnadmin create /home/svnlib/myprj

4.配置允许用户访问

cd /home/svnlib/myprj/confvi svnserve.conf
anon-access=none
auth-access=write
password-db=passwd

注:修改的文件前面不能有空格,否则启动svn server出错

vi passwd
[users]#<用户1> = <密码1>#<用户2> = <密码2>batsing=batsingPW

5.在本地电脑使用TortoiseSVN检出代码库

可能出现的问题1:
    Error: Can't connect to host '': 由于目标机器积极拒绝,无法连接。
    解决:首先测试svn的3690端口是否打开:

netstat -pan|grep 3690

    如果不成功说明服务没有被正常启动,启动SVN服务,输入命令

svnserve -d -r /home/svnlib

 

可能出现的问题2:   
    Error: No repository found in 'svn://localhost/myprj'
    解决:先关闭SVN服务

killall svnserve

    开启SVN服务,注意设置的目录

svnserve -d -r /home/svnlib

    再试试本机使用TortoiseSVN->Repo-browser查看版本库

6.检出版本库到指定目录

svn co svn://localhost/myprj /usr/local/apache/htdocs/myprj

7.一次性添加所有文件

svn st | grep '^\?' | tr '^\?' ' ' | sed 's/[ ]*//' | sed 's/[ ]/\\ /g' | xargs svn add

!注意网站的目录名不能含点号.否则会无法添加

8.提交上传(这里的提交备注不要省略)

svn commit -m "this is remarks"

9.SVN 更新

svn update

10.查看文件状态

svn st

【?:不在svn的控制中;M:内容被修改;C:发生冲突;A:预定加入到版本库;K:被锁定】

11.实时更新到测试目录 post-commit勾子

进入项目库目录下的 ./hooks目录,新建 post-commit文件

#!/bin/shexport LANG="zh_CN.GBK"SVN=/usr/bin/svn              #这里配置的是svn安装bin目录下的svn文件 WEB=/home/wwwroot/project/    #要更新的目录SVNUSER=batsing               #SVN登录用户名SVNPWD=mypassword             #SVN密码$SVN update $WEB --username $SVNUSER --password $SVNPWD

Linux下SVN安装与基本操作

设置权限为可执行  chmod +x post-commit 

可能出现的问题1:
    Error:  Error output could not be translated from the native locale to UTF-8
    解决:文件的语言编码跟系统的语言编码不同,修改文件中指定的语言编码。

可能出现的问题2:
    Error:  post-commit hook failed (exit code 255) with no output
    解决:没有执行权限,按上面说的方法对文件添加执行权限。

12.设置服务器svn开机自动启动

打开 /etc/rc.d/rc.local 文件,在末尾添加一句。保存即可

svnserve -d -r /home/svnlib

13.SVN库导出导入

备份svn存储库

#压缩备份svnadmin dump /home/svnlib/repository | gzip > ~/repository-backup.gz#不压缩备份svnadmin dump /home/svnlib/repository > ~/repository-backup.svn

恢复svn存储库

#建立新的svn存储库svnadmin create /home/svnlib/newrepository
#解压缩
gzip -d ./repository-bk.gz#导入存储库数据svnadmin load /home/svnlib/newrepository < ~/repository-backup.svn

14.删除SVN库(慎)

直接删除库项目的目录

rm -rf /home/svnlib/repository

 


以上是关于Linux下SVN安装与基本操作的主要内容,如果未能解决你的问题,请参考以下文章

Linux下eclipse SVN版本控制与使用

Linux下SVN安装与权限管理

linux下svn 的安装与配置(方式 yum)

centos总结linux下svn安装与使用

Linux下 svn相关操作

Linux下安装SVN与使用