管理员
   
论坛积分
分
威望 点
贡献值 个
金币 枚
|
一丶 SVN简介
; j! N6 ]% }6 n+ E) {: ^$ S) qSVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。(ps:百度百科抄的 可忽略)
$ X: m. E$ }3 j' u* g3 p, j1.准备工作
( i" ?9 q! P- I3 A# a) F, |& }一台centos7 服务器 一台 客户端
& x# e' D9 [0 l4 w. c————————————————3 t8 I9 F) J& X5 v' P
1、验证是否安装了SVN
l0 k) _, v2 |8 z) v3 k( d
) D1 ` K- f) u: h1 b+ q- B命令: # rpm -qa subversion! X) p- ^- H! v, X/ V$ I3 @1 Q
: F9 @8 |- Q( W如果安装了,输出对应的版本:subversion-1.6.11-15.el6_7.x86_64$ @) `+ t9 A- K: Q3 ^
3 h H3 i9 l* i& x2 c. b& L
否则,空白+ B( F1 i5 U( A& @6 y7 T) X. I
8 G# H5 Q) k. z7 u n$ N/ _. |2、安装SVN的命令7 L# f9 l3 k; e( J$ l1 y& h
( S4 D/ i* D$ y# yum -y install subversion
# Q; ?: @+ X7 z; {1 f
`: n* @/ V6 E接下来使用# svnadmin create /home/svn/blog //其中blog为你的站点目录 /home/svn/为目录
2 p% Z6 M% f, x8 i! u4 N5 a创建一个名为blog的svn版本库 ,进入blog目录 只要有以下目录就代表你的svn版本库搞好了- z9 _+ s' O" z: \! @! q
+ @7 e% ~4 G8 @$ O
然后我们进入‘blog’下的 conf目录 对svn进行配置,conf 下共有三个文件 authz 是对用户权限的配置 passwd是用户和密码的设置: X2 Q& o. S9 H% W, K" ~
7 Z' r: N- e! ?( F5 O' {4 c$ Nsvnserve.conf是对使用的配置包括是否开启匿名上传 ,用户上传等(差不多就是那个意思)
* |0 {# v/ a# E1 {! p
5 I6 C4 M$ y3 |% l; T, c4 E
8 ^% M+ s/ B$ i D首先我们对svnserve.conf 进行配置 把箭头处的两行 前的#去除 同时要注意前面不能要留空格
# W: [+ C8 W; ^2 L
+ k* Q3 ^; t" U! g9 v# password-db = passwd
" {: U5 f+ N0 r9 t# Y! Z8 ~6 s5 Z# D: W, U
# authz-db = authz
: e: p# E5 N7 i2 v- B) i; L0 O D; b( ^4 I
6 i6 u5 A% U% g; H
然后编辑passwd 文件 写上自己要设置的账号和密码 注意前边不能有空格 并且不能有 #号 否则配置无效
" B3 @4 w( x E0 ~! e/ y% E& E, p% L& P7 m9 x% k2 p
登录名=密码
* w' |- ?; b; f( D7 Y; A/ x! ^
8 g0 [" D& P8 [user=123456& s! q1 J1 ~/ S) Z5 }8 m
5 i2 i z$ o L& d( n2 A( S
7 V' N& v0 F z" ^" {
最后编辑authz文件给让配置的账号设置权限(其中[blog:/] 设置的用户对blog下的所有文件都有设置的权限 r代表可读权限 w代表可写权限)
. d( M/ e$ a' b( T. u' x+ l0 a* A9 A; G/ `# J! o
# * = r
) s X2 I( c: n2 O- B, o P* B0 J- h1 I2 U
[/]' I, }/ m% D# u+ [2 f) f
0 F$ n$ O5 Z) h n% ]7 W
root=rw6 v3 Y. }( _) ^; I+ h% e- j
6 ~" ]2 X8 m. s0 j* t' B3 Q, i& a这是用户的配置就完成了" Z$ M/ L/ ]6 t3 {4 J7 m+ c# L& c
* C& H0 |& k( T' J
接下来我们就需要开启svn svnserve -d -r /home/svn/blog & D( @6 a& J$ S0 }0 y
svnserve -d --listen-prot 端口 -r /data/svn/ssyleo
}- K6 }1 L$ V! N2 U& x
/ M* G: O% g% u7 u3 [- y使用此命令开启svn 根据自己设置的目录自行更改
' \4 c' |7 Q* \! q& j- x1 P2 r; I J4 ^- I( l' X; P
使用netstat -nltp 命令 可以看到 svn的默认端口为3690 如果你是用的是阿里云服务器的话 还需要在安全组添加该端口,否则也会造成 客户端上传代码失败具体操作我在这里就不多讲了
' }7 s2 q3 _/ f7 s$ U
+ o2 O9 `0 z; e% w* `' a. a$ S, W1 i
win下载svn工具- F2 a# n$ U2 p- Z7 K! {
& `, Q4 V$ w6 a" G0 b' N- R
接下来我们就需要在客户端做测试 这里我用的是我自己的电脑 svn客户端的下载链接https://tortoisesvn.net/downloads.html 打开后根据自己电脑配置选择不同的安装包 (安装完记得重启电脑)这里安装步骤不就不说了 一直下一步就行了2 D2 y& q7 b) O" ]& p, s' ]
4 ]( }) o* n; Z$ {$ @5 k& t% z3 J5 ^& z! t* J$ ^ k
重启完电脑后 右击鼠标 点击SVN checkout (svn捡出)下载代码
; [3 D/ U9 q5 F: R0 A输入你的svn地址 地址请根据自己的设置自行更改; ]& M' o }2 o3 W* T$ \
1 p6 P4 j; Z2 ~: y) ^5 M% D. @) L
K `1 K# q8 c/ E; q然后会弹出框让你输入你的账号和密码 输入后即可下载 服务器端的代码 你会发现文件夹里 只有一个.svn 如果没有的请将你的隐藏文件夹选项去掉这是你的svn 就搭建好了
! |, u% r/ {( X
" L9 S5 \+ R4 A
2 a, o" V& F. R7 C(svn客户端简单使用 svn update 更新代码 svn commit 提交代码)
3 W: C1 e- ~2 C( c4 H, r" l& T9 X$ s& d& j$ e
* _2 {: k; I8 F: J. e' p+ f3 Q1 o4 u7 z: K& }3 {& d: g9 L
可是这并不是我们想要的效果我们需要的是在web可以直接同步访问的所以我们要设置提交到svn的 代码能同步更新到web 根目录 svn 也是可以达到这种效果的 首先我们进入 web 根目录 这里我的跟目录在 /var/www/html/ 切换到 html目录下使用 svn co svn://192.168.1.35/blog 与网站根目录建立联系 同样的跟具体提示 输入自己设置的账号和密码并 输入yes设置保存
3 i' { W( L3 u, g4 {' j/ W3 s* X5 H: D1 B0 x$ c9 U# r) o
这时我们保存在版本库的代码就会被同步到网站根目录
5 K8 ]" k* ]- g. p! U, W9 u/ j5 D1 j4 O' B# |: m
8 `8 g8 N M# G3 {5 J. `! J- b7 Z( T: e" P
" W3 c1 U5 P- A6 W4 p* K
6 f1 r' T% M6 J' L
|
|