管理员
   
论坛积分
分
威望 点
贡献值 个
金币 枚
|
一丶 SVN简介6 S0 g/ N1 n( {8 c
SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。(ps:百度百科抄的 可忽略)
" u* } ~( q' U1 @1.准备工作
! E& i) p3 [5 u7 g0 C7 o9 x一台centos7 服务器 一台 客户端
. ?) A* ~" f2 f+ z. w6 s7 y- ~————————————————
1 S- ^* [. M' m( j% y2 }4 g! \1、验证是否安装了SVN9 z0 d% U5 l% h! @- v5 ^
7 z9 V% Z; Q _0 |9 `, v( n" b命令: # rpm -qa subversion9 D- j1 i8 G$ n) R1 b& r T
* P) w( k+ {" e( A如果安装了,输出对应的版本:subversion-1.6.11-15.el6_7.x86_640 H* V ^1 E6 G* h( x) X
: V* K$ ?$ a' G8 V( g F0 i1 l否则,空白
! l$ O# R6 r5 I$ {! a) k6 w3 d* J1 e4 n2 V! J! p* A) t- D
2、安装SVN的命令
* x) W1 \' m0 k5 n: Y* V% H7 ?6 V! A
, L; I4 @# }/ z0 Z7 l4 H- y5 ]5 T" o# yum -y install subversion
' f6 h: [! J" b+ A
# Z( @' \' }1 D" @( v G接下来使用# svnadmin create /home/svn/blog //其中blog为你的站点目录 /home/svn/为目录
* ]& E3 h$ ?3 U# W创建一个名为blog的svn版本库 ,进入blog目录 只要有以下目录就代表你的svn版本库搞好了 h8 R+ a" E) r0 ^* |# K$ M
+ Q8 A, s/ o9 z, a) W然后我们进入‘blog’下的 conf目录 对svn进行配置,conf 下共有三个文件 authz 是对用户权限的配置 passwd是用户和密码的设置
+ @) A, r& c [3 p6 ` U) k- ~
- z; M$ p. V3 @6 y5 Zsvnserve.conf是对使用的配置包括是否开启匿名上传 ,用户上传等(差不多就是那个意思)8 ~+ V8 ~" e8 w* i, n2 I" f
, S4 {7 r; X& J1 u( o9 W+ e) }9 q3 m- w6 `+ d* |# q
首先我们对svnserve.conf 进行配置 把箭头处的两行 前的#去除 同时要注意前面不能要留空格
; p- P3 E( ~ T) {- T6 ]# c
, C0 E4 `' \, n( O2 D" x/ f6 F( w6 g# password-db = passwd
) C, ]: }. X+ u' |; Z9 v$ |+ h9 Z- g: F/ b5 n
# authz-db = authz! t" q i: W+ j- |0 x% n. o5 n1 J% e
0 Z) G' s" B B7 L
2 M0 L0 A2 R1 O" ~3 R1 @5 H. ]+ x然后编辑passwd 文件 写上自己要设置的账号和密码 注意前边不能有空格 并且不能有 #号 否则配置无效1 ?% o @% m" R! f+ I" o
+ q. C7 `+ G& i. U3 s2 C登录名=密码5 u9 O$ M+ R; n+ @! d3 G3 H3 w
, k1 l- }* T" j7 f8 ]; ^/ A2 d
user=123456
) M( ` b0 E; B: A6 B. t9 T2 X+ ^! V* v0 Q
/ O2 j6 g- n6 G
最后编辑authz文件给让配置的账号设置权限(其中[blog:/] 设置的用户对blog下的所有文件都有设置的权限 r代表可读权限 w代表可写权限)6 y' K0 V$ j2 G5 b9 ?- {, N9 N$ v
8 W$ E# Z1 s ^4 p: f+ a" j
# * = r* j; ^& [0 P: }. W9 E
0 b" t% P/ M# M6 r
[/]
" O! p% l5 t$ M! \( W B; K
) l0 Q# K% p& eroot=rw
5 t4 _: T7 U8 S* }0 ~9 l2 f
8 w& N F- O6 R) ]这是用户的配置就完成了
6 d. n% H$ w- ^1 S5 ^
5 B l4 R( Q0 Z- _0 a/ } t0 {接下来我们就需要开启svn svnserve -d -r /home/svn/blog * l% x/ h) G+ P$ S% S
svnserve -d --listen-prot 端口 -r /data/svn/ssyleo
3 L6 e6 \- a8 \
+ K- W2 [ V: ^使用此命令开启svn 根据自己设置的目录自行更改, }& `2 R, X# b* P8 E
( |9 Z. M6 I3 ^; H9 {
使用netstat -nltp 命令 可以看到 svn的默认端口为3690 如果你是用的是阿里云服务器的话 还需要在安全组添加该端口,否则也会造成 客户端上传代码失败具体操作我在这里就不多讲了
; a- p5 \ I% E9 M2 B+ t) ~ ^" ]9 j: Z
c1 `7 J0 E* V5 \ K- f
win下载svn工具
8 {3 D7 p$ A9 W* b; T7 {7 D; B2 J2 j. I3 p1 T, ~
接下来我们就需要在客户端做测试 这里我用的是我自己的电脑 svn客户端的下载链接https://tortoisesvn.net/downloads.html 打开后根据自己电脑配置选择不同的安装包 (安装完记得重启电脑)这里安装步骤不就不说了 一直下一步就行了$ z" Y8 z7 x3 h
/ X" n9 s" j; i5 R
& j7 G; M( ?& i重启完电脑后 右击鼠标 点击SVN checkout (svn捡出)下载代码
% M) l5 A4 }8 E1 q输入你的svn地址 地址请根据自己的设置自行更改
! Z& M7 h( ]0 v, [; e4 {/ c: j3 O' {5 v- y5 _- D5 I" n0 }# U
' C& H9 U6 R& V# x1 p然后会弹出框让你输入你的账号和密码 输入后即可下载 服务器端的代码 你会发现文件夹里 只有一个.svn 如果没有的请将你的隐藏文件夹选项去掉这是你的svn 就搭建好了
" ?' U* X/ V7 h1 B' y7 H" |2 I R. O' ?7 |2 J
' _4 F# f g& y. R) B/ P
(svn客户端简单使用 svn update 更新代码 svn commit 提交代码)
, D, a* g+ m( G! g9 f3 j) c& p* s- k. u. _/ K4 |: n' v8 t- B
4 G2 l/ m! c# J: Z% J* z2 t
3 c* _$ o$ a$ k- v9 S4 p可是这并不是我们想要的效果我们需要的是在web可以直接同步访问的所以我们要设置提交到svn的 代码能同步更新到web 根目录 svn 也是可以达到这种效果的 首先我们进入 web 根目录 这里我的跟目录在 /var/www/html/ 切换到 html目录下使用 svn co svn://192.168.1.35/blog 与网站根目录建立联系 同样的跟具体提示 输入自己设置的账号和密码并 输入yes设置保存$ [1 O8 j. s$ ~) F
% p$ A: A+ s# h, l* q2 F这时我们保存在版本库的代码就会被同步到网站根目录6 Q; U5 Z1 P2 ?: X5 W
( [' g) `5 W8 q6 F
4 Q, e y0 o( i8 U$ H0 J6 a7 k z; |* E/ s' q6 b* w- `
: F v) m0 B A% r
6 w! N- v3 Q, `$ I |
|