新手福利:SVN服务器安装部署以及客户端详细使用教程!

SVN简介(来自百度):

SVN全名Subversion,即版本控制系统。SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。

拓扑图:

Centos搭建svn服务器!!!

1、服务器安装svn

[[email protected] svnserver ~]# yum install subversion-y

[[email protected] ~]# svnserve –version            #查看版本

svnserve,version 1.6.11 (r934486)

[[email protected] ~]# mkdir/var/www/svn/serverrepo  –pv

[[email protected] ~]# svnadmin create/var/www/svn/serverrepo/   #创建svn仓库,产品服务器用

[[email protected] ~]# mkdir/var/www/svn/testrepo  –pv

[[email protected] ~]# svnadmin create/var/www/svn/testrepo/ #创建svn仓库,测试服务器用

2、配置(两个仓库设置方法相同,这里以serverrepo为例)
     上面的操作很简单,几个命令就搞定, 下面的操作也不难。
     进入上面生成的文件夹serverrepo/conf下,进行配置,  有以下几个文件authz, passwd, svnserve.conf
     其中authz 是权限控制,可以设置哪些用户可以访问哪些目录,   passwd是设置用户和密码的,    svnserve是设置svn相关的操作。

   2.1先设置passwd

[[email protected] serverrepo]# cd /var/www/svn/serverrepo/conf/

[[email protected] conf]# vim passwd

[users]
# harry = harryssecret
# sally = sallyssecret
deply = deploy
#用户名=密码,这里注意账号密码要顶格写;不然无法识别;
#这样我们就建立了deploy用户,密码deploy  ;

2.2 再设置权限authz

[[email protected] conf]# vim authz   #在文件末尾添加deploy用户的权限;

[/]
deploy = rw
#意思是deploy用户对所有的目录有读写权限;

2.3最后设定svnserve.conf

[[email protected] conf]# vim svnserve.conf
anon-access = none         #使非授权用户无法访问
auth-access = write         #使授权用户有写权限
password-db = passwd  #用户认证信息文件
authz-db = authz           #访问控制文件
realm = /var/www/svn/serverrepo         #认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字。
#以上语句都必须顶格写, 左侧不能留空格, 否则会出错.

 

2.4启动svn:

[[email protected] serverrepo]# svnserve -d -r/var/www/svn/serverrepo/

启用测试服务器用的SVN:

已经有svn在运行,可以换一个端口运行

[[email protected] conf]# svnserve -d -r/var/www/svn/testrepo/ --listen-port 3691

这样同一台服务器可以运行多个svnserver

查看端口:

[[email protected] conf]# ss -tnl

State      Recv-Q Send-Q      Local Address:Port                       
LISTEN     0      7              *:3690       (默认svn端口)                
LISTEN     0      7              *:3691      (指定的端口)

好了,启动成功后,就可以使用了。

使用windows客户端,进行项目上传!!!

可以百度下载一个:TortoiseSVN 客户端工具并安装;

1、在屏幕空白处点击鼠标右键,选择SVNcheckout;

2、填写svn服务器路径,已经checkout下来的文件名,点击OK;

3、输入账号密码,点击OK,有成功提示;

4、进入F盘,并刷新,进入webserver文件夹会看到一个隐藏的svn文件夹;

5、创建需要的项目或文件,并提交到svn服务器;

提交完成以后需要进入web服务器查看!!!

进入web服务器端!!!(testserver也是一样的安装)

[[email protected] ~]#yuminstall subversion  #安装svn

[[email protected] svnclient ~]#svn checkoutsvn://192.168.10.45  /www/phpcode

#checkout把svn服务器的代码全部下载到本地/www/phpcode目录,注意:phpcode目录不用创建,如果有这个目录会报错;

#如果使用test服务器checkout,只需要在IP后面加端口即可,

例如:# svncheckout svn://192.168.10.45:3691 /www/phpcode

#第一次连接会要求输入账号密码;

Authentication realm:<svn://192.168.10.45:3690> /var/www/svn/serverrepo
Password for ‘root‘:
Authentication realm:<svn://192.168.10.45:3690> /var/www/svn/serverrepo
Username: deploy
Password for ‘deploy‘:
-----------------------------------------------------------------------
ATTENTION! Your password for authentication realm:
  <svn://192.168.10.45:3690> /var/www/svn/serverrepo
can only be stored to diskunencrypted!  You are advised toconfigure
your system so that Subversion can storepasswords encrypted, if
possible. See the documentation for details.
You can avoid future appearances of thiswarning by setting the value
of the ‘store-plaintext-passwords‘ optionto either ‘yes‘ or ‘no‘ in
‘/root/.subversion/servers‘.
-----------------------------------------------------------------------
Store password unencrypted (yes/no)? yes
Checked out revision 0.

[[email protected] www]# cd /www/phpcode/           #进入目录

[[email protected] phpcode]# svn up/www/phpcode/       #更新svn服务器的内容

A   /www/phpcode/webaaa
Updated to revision 1.

[[email protected] phpcode]# ls  #已经可以看到在windows客户端创建的目录了!!!

webaaa

使用脚本执行每分钟同步一次svn服务器的内容;

[[email protected] svnclient ~]# useradd deploy                 #创建deploy用户

[[email protected] svnclient ~]# chown -R  deploy.deploy /www/phpcode/  #把phpcode权限给到deploy用户

使用deploy用户创建一个任务计划

[[email protected] ~]# su - deploy

[[email protected] ~]$ cd /www/

[[email protected] www]$ svn update/www/phpcode/  (需要先执行一次更新,因为这个用户第一次执行也需要输入账号密码;)

[[email protected] svnclient ~]$ crontab -e

*/1 * * * * /usr/bin/svn update/www/phpcode  >> /dev/null
#每分钟执行一次svn更新,并把执行结果丢弃

扩展知识,在web服务器中:

往版本库中添加新的文件 

svn add file
例如:svn add test.php(添加test.php)
svn add *.php(添加当前目录下所有的php文件)

将改动的文件提交到版本库(修改过的文件必须先添加文件到版本库才能提交修改到版本库)
svn commit -m “LogMessage“ [-N] [--no-unlock] PATH(如果选择了保持锁,就使用–no-unlock开关)
例如:svn commit -m “add test file for my test“ test.php
简写:svn ci

时间: 2024-12-25 09:10:58

新手福利:SVN服务器安装部署以及客户端详细使用教程!的相关文章

Linux下SVN服务器安装配置及客户端安装说明

原文地址:http://wenku.baidu.com/link?url=h3dVAMx4azpOXEND5HQEE6nliE8-zc0GSQ03yv4cUs1vXMALXF64UsK7kT7kXm_zf7k6J6EHSszq4ZU_Tyn0JimTKV8SzI9Ac4veaxCG3im Linux 下 SVN 服务器安装配置 第一章 安装 1. 采用源文件编译安装.源文件共两个,为: subversion-1.6.1.tar.gz ( subversion 源文件) subversion-de

Windows 2016 无域故障转移群集部署方法 超详细图文教程

转自:https://blog.csdn.net/demonson/article/details/81708809 Windows 2016 无域故障转移群集部署方法 超详细图文教程 故障转移群集是一个很实用的功能,而windows在2016版本开始,终于支持不用域做故障转移群集.在群集中,我们可以设定一个"群集IP"而客户端只需要根据这个"群集IP"就能连接当前群集的主服务器.而不必关心群集服务器之间的替换.而更棒的是,它是"去中心"的,它没

基于svn+ssh:访问svn的部署以及客户端配置

1.安装ssh sudo apt-get install ssh 2.安装subversion sudo apt-get install subversion 3.为参与项目开发的成员建立用户帐户 sudo adduser wangchengliang 4.建立名为svn的用户组 sudo addgroup svn sudo addgroup wangchengliang svn 注:这里可以根据不同的权限建立多个用户组,把有相应权限的用户放入相应的组中 5.建立项目文件存储目录 sudo mk

linux svn服务器搭建、客户端操作、备份与恢复

Subversion(SVN)是一个开源的版本控制系統,管理着随时间改变的数据.这些数据放置在一个中央资料档案库中,这个档案库很像一个普通的文件服务器,它会记住每一次文件的变动,这样就可以把档案恢复到旧的版本,或是浏览文件的变动历史. 本文目录: linux svn服务器部署 linux svn客户端命令操作 linux svn备份与恢复 一.linux svn服务器部署 1.安装svn [[email protected]~]#yum install -y subversion [[email

新手福利:Apache Spark入门攻略

新手福利:Apache Spark入门攻略 作者Ashwini Kuntamukkala  出处:CSDN 本文聚焦Apache Spark入门,了解其在大数据领域的地位,覆盖Apache Spark的安装及应用程序的建立,并解释一些常见的行为和操作. 一. 为什么要使用Apache Spark 时下,我们正处在一个"大数据"的时代,每时每刻,都有各种类型的数据被生产.而在此紫外,数据增幅的速度也在显著增加.从广义上看,这些数据包含交易数据.社交媒体内容(比如文本.图像和视频)以及传感

MDT2012+ADK8.0+WDS部署Windows客户端(一)部署概念和方法论

Microsoft为部署windows操作系统推荐了一些有针对性的方式.这些方式的范围从在一些计算机上手动配置Windows软件,到使用自动化工具和技术将软件部署到数千台计算机. 有关四种常用部署策略的详细信息: 与零售媒体紧密接触: 一个实践性的手动部署,其中您可以使用零售安装DVD坐在每天客户端计算机上安装windows操作系统,并手动配置每台计算机.这也是大多数用户采用的安装方式,该方式可帮助您部分自动化安装过程,从而帮助您的组织节省时间和金钱.如果你的组织没有专门的信息技术(IT)员工,

ubuntu下SVN服务器安装配置

ubuntu下SVN服务器安装配置 1.安装包 sudo apt-get install subversion 2.添加svn管理用户及subversion组 $ sudo adduser svnuser 添加用户 $ sudo addgroup subversion 添加用户组 $ sudo addgroup svnuser subversion 将用户加入到组 3.创建项目目录 sudo mkdir /home/svn 创建文件 cd /home/svn sudo mkdir myproje

SVN服务器部署--mod_dav_svn

Svn服务器部署 svn简介 Subversion是一个免费/开源的版本控制系统, Subversion 可以跨越时间地对文件和目录, 以及它们的修改进行管理. 这就允许你恢复 数据的旧版本, 或检查数据的修改历史. 由于这个特点, 很多人把版本控制系统 看成是一种 "时间机器". Svn的组件 svn 客户端命令行工具 svnversion 用于报告工作副本状态 (就项目的版本号而言) 的工具 svnlook可以直接检查仓库的工具 svnadmin 用于创建, 调整或修复 Subve

搭建SVN,部署社交网站

概述: 社交网站的第一个版本部署在LNMP平台之上,前段为Nginx服务器,通过fastcgi协议访问后端的PHP服务器.为了保证数据安全,要求搭建MySQL数据库主从集群. 项目介绍: 本项目案例结合SVN.LNMP和MySQL三种环境,部署一个社交网站,本社交网站采用PHP语言开发,搭建SVN服务器进行版本控制和集中管理PHP程序员开发的代码,以Nginx作为前端服务器,通过fastcgi协议访问后端的PHP服务器,调用PHP页面:为保证数据安全,搭建MySQL主从复制环境存储用户重要数据: