管理员
   
论坛积分
分
威望 点
贡献值 个
金币 枚
|
一丶 SVN简介# j$ E! {* O/ R( r- b# d
SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。(ps:百度百科抄的 可忽略)
8 ^, b4 R9 `$ N {: W, \1.准备工作
7 z7 t8 T( Z/ u7 `一台centos7 服务器 一台 客户端
/ A( Q, E9 A, F————————————————
& M0 l! }& @! k5 W2 G. F1、验证是否安装了SVN
, {8 I, P* T' {* R0 c* W1 [7 s0 N c$ g! L) L
命令: # rpm -qa subversion
; V1 Q$ F! r) E/ N: |" n
6 f; D: A8 }( k如果安装了,输出对应的版本:subversion-1.6.11-15.el6_7.x86_64! v0 G/ K. [+ W. O% Q
8 g! h5 L! g& @( h1 N7 ~! F
否则,空白( ]: C8 C% ~$ W; d
6 F1 [" L z, \7 j( N0 }2、安装SVN的命令. O+ Q2 l+ D, B9 k( N ]7 j' V6 L
/ }5 g: X9 m* m4 K9 p$ R/ M
# yum -y install subversion* P8 ?6 ~, o2 K/ G z# R, V
( j2 `" |6 A6 S接下来使用# svnadmin create /home/svn/blog //其中blog为你的站点目录 /home/svn/为目录, v5 }6 f: o- A+ X# r t1 _# e* ~
创建一个名为blog的svn版本库 ,进入blog目录 只要有以下目录就代表你的svn版本库搞好了
5 p2 A8 t, A) D6 x
( M$ M; h L" ?3 R6 m- k0 D) S然后我们进入‘blog’下的 conf目录 对svn进行配置,conf 下共有三个文件 authz 是对用户权限的配置 passwd是用户和密码的设置" Z0 {' f# V1 E3 {2 h4 k
$ ^% G% y2 F5 w7 [
svnserve.conf是对使用的配置包括是否开启匿名上传 ,用户上传等(差不多就是那个意思)# b+ t1 }# H* U
# G' M7 M& G# h2 h( ?
5 X; _5 J- c1 y4 ^% O
首先我们对svnserve.conf 进行配置 把箭头处的两行 前的#去除 同时要注意前面不能要留空格9 o) {+ D" i; n% j J
# @7 W% X2 i- D( [. o* [7 c/ m# password-db = passwd p& ^3 x: T5 R% _( U3 l
8 I( c; w+ v3 I$ z$ ?5 e( u) Q, ]6 u
# authz-db = authz& ^5 f- p2 ^4 s1 X9 D6 G. N- W2 Q% q" b
! ^0 [) `+ h5 I# k% ]+ C% v+ D+ |! @( C" y
然后编辑passwd 文件 写上自己要设置的账号和密码 注意前边不能有空格 并且不能有 #号 否则配置无效
6 X- e6 r4 P* R9 \; K% W: b8 d- E6 Z v( A0 b h6 I) y
登录名=密码+ G* U! |' N' C2 L4 m7 O
8 ^5 j1 u) L8 ^0 e! P" quser=123456 C6 r0 t m; C9 ?
, Q0 M3 ?2 h+ [7 y8 L, v6 {. H
* b [. a9 P3 a- P: r
最后编辑authz文件给让配置的账号设置权限(其中[blog:/] 设置的用户对blog下的所有文件都有设置的权限 r代表可读权限 w代表可写权限)% ~% Y$ X! R [. n! ^* p) @
4 f, D" M- K/ ? X( S/ Q" a0 }# * = r+ i6 e$ Y* H' I
. a- I! t# x7 E. S% S O
[/]7 R! L% x! }/ x8 |# O
+ `& h% |% n ^9 {5 p$ H
root=rw
: _3 D. g/ a$ y& h' F8 j8 J6 ^: @" {) N A% D
这是用户的配置就完成了/ B3 A8 g2 u+ l
% z7 @6 u: ^" e接下来我们就需要开启svn svnserve -d -r /home/svn/blog / K, d9 b" y" E+ F
svnserve -d --listen-prot 端口 -r /data/svn/ssyleo
& T- Z( z; L1 N( x' m) f0 Y. M; Z3 E0 B& N( E6 L/ Y
使用此命令开启svn 根据自己设置的目录自行更改
6 @$ g' ?1 A" u6 O, Q2 [& Z R* W8 d
使用netstat -nltp 命令 可以看到 svn的默认端口为3690 如果你是用的是阿里云服务器的话 还需要在安全组添加该端口,否则也会造成 客户端上传代码失败具体操作我在这里就不多讲了
1 |1 R$ H% o. `( e, f$ W% }; j& @: [6 ^
- x; x6 M N3 p1 A# _8 Z K$ h* {win下载svn工具/ n6 s* ]- v& t7 O
0 t0 \" H8 z3 \0 o: y
接下来我们就需要在客户端做测试 这里我用的是我自己的电脑 svn客户端的下载链接https://tortoisesvn.net/downloads.html 打开后根据自己电脑配置选择不同的安装包 (安装完记得重启电脑)这里安装步骤不就不说了 一直下一步就行了
$ A1 h7 j( M! F' U/ w$ L) o
* T3 c+ X- v4 B7 L
6 a6 H0 c* `1 r5 ]重启完电脑后 右击鼠标 点击SVN checkout (svn捡出)下载代码
I9 A9 t# @, O7 P6 n( ]: O输入你的svn地址 地址请根据自己的设置自行更改& a* `$ \& n' l9 |
( f8 l4 z0 y g# I! U# k$ l; f _0 l2 g: n. I/ \) _
然后会弹出框让你输入你的账号和密码 输入后即可下载 服务器端的代码 你会发现文件夹里 只有一个.svn 如果没有的请将你的隐藏文件夹选项去掉这是你的svn 就搭建好了' j% R* o) u9 c$ C8 {
) X7 Y% o" f1 B
" b& Y; J2 s. M" m5 d Y( k4 @; n( X(svn客户端简单使用 svn update 更新代码 svn commit 提交代码)1 @1 a! I" o' _( l8 d3 ]
( _" i# b9 v& J2 m; V! L+ D
; E+ H, k" Z# P0 C9 ?0 O$ L4 C) M/ l1 R3 y6 P# r3 x
可是这并不是我们想要的效果我们需要的是在web可以直接同步访问的所以我们要设置提交到svn的 代码能同步更新到web 根目录 svn 也是可以达到这种效果的 首先我们进入 web 根目录 这里我的跟目录在 /var/www/html/ 切换到 html目录下使用 svn co svn://192.168.1.35/blog 与网站根目录建立联系 同样的跟具体提示 输入自己设置的账号和密码并 输入yes设置保存
) t' t4 g+ Q; A9 x- ?. c% R) j' E# i/ ^ D; V
这时我们保存在版本库的代码就会被同步到网站根目录
% A5 Y" m" Z4 c- }$ l
5 K; B( d+ P% Q- p# f: \0 G. j
, m+ \, ?* o, H$ s: I+ m
$ T I' Q4 H& s! }' L0 P. J/ w! i5 K
. b; Y1 P; E3 d
|
|