前置条件linux
一、你的服务器是linux而且有固定的ip,没有固定的ip每次都要设置,超麻烦。阿里、百度、新浪等的云服务器都有固定ip滴,就是比较贵哦。shell
二、有sudo权限,没有的话进root用户给自个添加(usermod -G sudo 用户名)。windows
安装svn的服务器端服务器
sudo apt-get install subversion
管理多个项目的代码仓库svn
咱们可能有多个项目,因此须要分开管理。测试
cd /home mkdir code cd code //建立三个代码仓库,用于三个项目 svnadmin create project1 svnadmin create project2 svnadmin create project3 //把配置文件放到根目录(/home/code)来统一管理 cd /projcet1/conf cp authz passwd /home/code //进入各个项目的svnserve.conf文件(/home/code/project1/conf),这里以project1为例,其余两个项目同样 vi svnserve.conf 修改为以下:(记得把前面的#去掉,#是用来注释的) anon-access = none //禁止匿名访问 auth-access = write password-db = /home/svn/passwd //统一使用密码文件 authz-db = /home/svn/authz realm = project1 //你的项目名,svn客户端访问时须要用来对应访问的 //三个项目都依次修改后,回到/home/code cd /home/code vi passwd //添加用户和密码,而后保存退出 [users] user1 = user1 user2 = user2 admin1 = admin1 //配置用户权限,而后保存退出 vi authz [groups] //分组 admin = admin //假若有多个用逗号分隔 guest = user1 guset1 = user2 [/] //管理者拥有全部读写权限 * = @admin = rw [project1:/] //项目1的访问控制,guest1,2没法访问 @admin = rw 或 user1 = rw user2 = rw [project2:/] @guest = rw
启动svn服务spa
//-d指明以守护模式运行,-r指明后台运行,svn自动在3690端口监听。3690是默认端口,可使用“–listen-port=”或者“–listen-host=”来指定其它端口 svnserve -d -r /home/code
假如要中止服务
线程
killall svnserve 或者 ps -ef|grep svnserve kill -9 对应的线程id号
svn客户端操做code
svn的地址为:svn://服务器的ip地址或域名/项目名ip
其余问题
假如报authorization failed错误,在/home/code下的authz文件后面加上killall svnserve
[\] * = rw
测试
一、能够到windows上新建一个文件夹,用svn Checkout(前提是装有TortoiseSVN),地址填写:svn://202.202.202.202/project1
二、就在当前的linux上,到/home/code之外的目录去,执行:svn checkout svn://202.202.202.202/project1,接下来的就是svn的命令操做咯~~~
over