管理员
   
论坛积分
分
威望 点
贡献值 个
金币 枚
|
一丶 SVN简介
4 Y. ~- S7 C. M5 R' F3 v$ d6 eSVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。(ps:百度百科抄的 可忽略)* W. m8 C7 a8 x" o* V; T* a
1.准备工作
/ |. _2 f$ w& v& k一台centos7 服务器 一台 客户端$ ]0 B) h$ C0 [& T& \
————————————————
6 [" o0 q i* z1 D5 m* \( r/ m1、验证是否安装了SVN/ x* U- c: g6 C9 @0 @; r5 W" G* E8 Q
$ V: n* h7 D- r0 A命令: # rpm -qa subversion
$ ]: x% y1 y4 w8 f, L4 {6 P5 T v! D/ S: B7 ^
如果安装了,输出对应的版本:subversion-1.6.11-15.el6_7.x86_640 Z( S9 l$ s1 s! X
2 `3 {2 m+ ^( O, F
否则,空白1 d* A* X' v+ s. i
2 |! a* Y% O6 r, r2、安装SVN的命令1 x$ o. X/ O7 u2 I8 D( K' y
) _# |" C; g( U# yum -y install subversion9 J$ l2 |8 L2 Y. ^9 {
! \; y0 p6 a* L
接下来使用# svnadmin create /home/svn/blog //其中blog为你的站点目录 /home/svn/为目录
: P7 x q% K$ }) D" H" |2 h0 I创建一个名为blog的svn版本库 ,进入blog目录 只要有以下目录就代表你的svn版本库搞好了$ f& T, `' t( Z9 ~
+ Q* V9 @! p1 L; u8 e+ ~7 o然后我们进入‘blog’下的 conf目录 对svn进行配置,conf 下共有三个文件 authz 是对用户权限的配置 passwd是用户和密码的设置; x" W- U m# S" {0 Q+ h+ a, [
3 u6 K) ?" c9 I# Z
svnserve.conf是对使用的配置包括是否开启匿名上传 ,用户上传等(差不多就是那个意思)
. J" _5 ?9 _0 q( c1 `
, j7 i, `6 i3 s" ^$ @ v5 V9 m
3 r+ s9 m- f% [+ E% v; Z4 A首先我们对svnserve.conf 进行配置 把箭头处的两行 前的#去除 同时要注意前面不能要留空格2 h5 N: [ a( {( W- \9 h# V! P ^
# n5 [/ G; Q# \. {+ j& `0 |
# password-db = passwd, d5 h3 k! s$ F
9 x- |1 |3 u0 i0 X" \9 Y- O1 G. m# authz-db = authz
/ `0 g! N3 Y* m8 d
# g! I2 R/ P; q# T) ?
9 D4 P$ p; E. _% d& l然后编辑passwd 文件 写上自己要设置的账号和密码 注意前边不能有空格 并且不能有 #号 否则配置无效8 Z! V0 e R- H
: G- A& p' H$ j+ c9 ?
登录名=密码
% S3 |0 i% A, j1 h1 u' _5 a1 ^% g" V# i. g& x0 H! O$ b
user=123456- { D! ^5 n$ @$ v3 h' l$ {7 s( r9 |
+ j- B: l. A6 V) Q. n
* a( W8 F& P) K' g9 z; Q0 v最后编辑authz文件给让配置的账号设置权限(其中[blog:/] 设置的用户对blog下的所有文件都有设置的权限 r代表可读权限 w代表可写权限)
. {+ \/ b* F5 }6 ?) |: o8 d5 x" e* @5 Y1 J d
# * = r% ?% P1 a8 Z0 A3 \6 I
5 G/ I0 ^& q* p3 u5 [' E( m+ C; m
[/]9 z! I% f( B4 e' h, Y
5 Z( V; A* v' a# ?' ^) a/ U2 Broot=rw
; k, }: q; y1 Z9 }0 Z- L
4 m: t, h# n8 |# y% x$ J这是用户的配置就完成了7 P9 Y3 H) V7 L% U
* a. \6 a4 N' R2 b+ l6 g$ ?1 n
接下来我们就需要开启svn svnserve -d -r /home/svn/blog
7 ]1 [1 @# t; @5 {$ c5 fsvnserve -d --listen-prot 端口 -r /data/svn/ssyleo1 r. X& n) d% b/ s
5 R+ X: x2 Z2 N5 v使用此命令开启svn 根据自己设置的目录自行更改
6 A" {! {/ ~( s6 r2 q# ~
( B2 a0 z: O# g; i# ^使用netstat -nltp 命令 可以看到 svn的默认端口为3690 如果你是用的是阿里云服务器的话 还需要在安全组添加该端口,否则也会造成 客户端上传代码失败具体操作我在这里就不多讲了6 e: W, p6 j9 D& H- n1 v& {- Z
1 m3 x: K( Z! E5 X
% _' K& \( N L7 Awin下载svn工具" ~ ~. l; e. [! V: W: ?
( g g! Z0 t7 r2 a6 G接下来我们就需要在客户端做测试 这里我用的是我自己的电脑 svn客户端的下载链接https://tortoisesvn.net/downloads.html 打开后根据自己电脑配置选择不同的安装包 (安装完记得重启电脑)这里安装步骤不就不说了 一直下一步就行了
4 j7 J2 r, R" |$ H) I- u3 n- a/ i4 H- a
( e) V5 o* l# ~8 M1 |1 v- Y1 {
重启完电脑后 右击鼠标 点击SVN checkout (svn捡出)下载代码
9 t% Q# x/ H6 J7 a输入你的svn地址 地址请根据自己的设置自行更改3 k- j% G# E% ^2 ^
& e3 H( d! W, Z$ ^3 \$ W7 ?) U( I. @- `0 \. f8 _- z
然后会弹出框让你输入你的账号和密码 输入后即可下载 服务器端的代码 你会发现文件夹里 只有一个.svn 如果没有的请将你的隐藏文件夹选项去掉这是你的svn 就搭建好了
: r" @' @/ m% ^ u$ c: [$ W$ {' f4 j# N$ |
5 O0 N& E9 x; H+ Q- `0 L2 Y(svn客户端简单使用 svn update 更新代码 svn commit 提交代码). r; c9 T9 u6 o( q; P( @3 {! s
% m0 I0 b) U9 R' g u' e/ J, `! v+ @9 A7 L7 b7 d4 Y
( c: X8 |7 F5 _- @- j
可是这并不是我们想要的效果我们需要的是在web可以直接同步访问的所以我们要设置提交到svn的 代码能同步更新到web 根目录 svn 也是可以达到这种效果的 首先我们进入 web 根目录 这里我的跟目录在 /var/www/html/ 切换到 html目录下使用 svn co svn://192.168.1.35/blog 与网站根目录建立联系 同样的跟具体提示 输入自己设置的账号和密码并 输入yes设置保存
1 I# u! V0 t, p/ m3 p* g" Q/ ?) }+ k6 w( q" x# y, m
这时我们保存在版本库的代码就会被同步到网站根目录9 X6 o8 r0 V. v( q( G3 W
4 i5 L+ M3 U$ e" k5 ^
) N4 i6 `1 @& S2 ?1 {
5 w3 m4 o# E. z4 {/ S1 X
! k% ]. M' L; M. b
. ~$ i% j7 Q) A" l, ~2 i& @
|
|