管理员
   
论坛积分
分
威望 点
贡献值 个
金币 枚
|
一丶 SVN简介
5 z4 z3 O5 `: o* wSVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。(ps:百度百科抄的 可忽略)
, e7 }( |7 J- N0 M1.准备工作 x8 K# o7 @- `3 ? C
一台centos7 服务器 一台 客户端0 Q4 X( x. f" k( I+ F* A
————————————————
# ?! k% l5 g7 a1 N- E1、验证是否安装了SVN$ i5 A( @( _& l& V7 t+ d
% L ~1 ^( h+ d8 O3 }% V
命令: # rpm -qa subversion7 k) f; |, h0 K7 u+ t* g
7 Y: D; d- `9 g e4 e8 U7 }
如果安装了,输出对应的版本:subversion-1.6.11-15.el6_7.x86_64# n3 u" l. Y8 d! A. h0 J
% R+ e$ E6 ~: H* C) c0 n否则,空白
% f* x1 K* a0 m" V
0 `; L+ u& v" l B" ]) {- g/ S2、安装SVN的命令, j9 Z1 M8 i8 F! [6 C
8 c `8 [( V' a/ }) a
# yum -y install subversion
2 p* j! n. Z3 Z4 G8 c& L
$ ]* N# m) L/ E, x/ Q接下来使用# svnadmin create /home/svn/blog //其中blog为你的站点目录 /home/svn/为目录
. W2 z g+ ~0 p6 X1 J6 |- O4 u创建一个名为blog的svn版本库 ,进入blog目录 只要有以下目录就代表你的svn版本库搞好了
- ~7 F# n8 V5 J0 O6 K) r" V
, t: t$ q ?0 j: ?0 t% ~3 ?$ W0 ]然后我们进入‘blog’下的 conf目录 对svn进行配置,conf 下共有三个文件 authz 是对用户权限的配置 passwd是用户和密码的设置
- G( u# c* K8 K( }8 a9 `7 Z) i6 W8 p Q- |( A4 ^" b; t
svnserve.conf是对使用的配置包括是否开启匿名上传 ,用户上传等(差不多就是那个意思)1 U4 p* T, g* R) H, ?
" y) F4 f$ E a1 |
" r' c& B" Z% o+ g5 {0 W0 o
首先我们对svnserve.conf 进行配置 把箭头处的两行 前的#去除 同时要注意前面不能要留空格7 G2 p2 Z8 r0 z; _2 I1 V
( s0 q2 U! W- \, T1 _# password-db = passwd: t6 x( l; \3 I* W+ K" n0 }
" s0 D; C3 E: c. r# authz-db = authz7 Z, H; j: K7 L8 U
& R8 L j8 f/ P* F w: _. Y9 Z3 W+ z: W
然后编辑passwd 文件 写上自己要设置的账号和密码 注意前边不能有空格 并且不能有 #号 否则配置无效& F4 Z1 T1 \. ?# w! Q6 L- Q' |
' j3 |( v) z- R0 w+ H, \
登录名=密码) [/ i, X$ e! ?/ s2 a8 i
: T5 \& C: K1 z6 D8 Q/ {
user=123456
. x* S. i1 _- o' \) B4 G7 M) r1 s' s G7 E
9 y# ]3 _) G2 b% ]$ [最后编辑authz文件给让配置的账号设置权限(其中[blog:/] 设置的用户对blog下的所有文件都有设置的权限 r代表可读权限 w代表可写权限)+ C5 L; t. U. {0 u0 Z. @3 R
! Z0 J! Y5 ]1 _
# * = r5 z8 J6 U% D0 [ z5 t
4 S; z* j% f" M, v9 S6 k
[/]6 O- K, Q1 [; g, ]* t
5 z. t7 }- g! rroot=rw8 P+ z* ?7 P8 [4 F( ], E1 F [
8 a8 m- q, B ?) m. J" m+ t) ~这是用户的配置就完成了
' K! c1 G5 |+ {- A' |/ E5 p# F z, L
接下来我们就需要开启svn svnserve -d -r /home/svn/blog
4 V- @7 K! B2 _$ |, dsvnserve -d --listen-prot 端口 -r /data/svn/ssyleo
" @$ q( @2 Z: ?! r1 f' Q7 Y, U5 L3 w/ T8 z: H/ |+ }) |2 `
使用此命令开启svn 根据自己设置的目录自行更改
3 A3 X! u V! N/ N; L4 m: K& N- G9 a+ f( s* f3 c
使用netstat -nltp 命令 可以看到 svn的默认端口为3690 如果你是用的是阿里云服务器的话 还需要在安全组添加该端口,否则也会造成 客户端上传代码失败具体操作我在这里就不多讲了
# V# M- N* f7 M4 p
7 j1 v4 e9 F* C2 f! M7 k1 s
1 E# g& E) m% d+ a1 e& S- dwin下载svn工具5 W" ]6 ]7 l( d: J
" A' T- u" J; \" p0 ?" }接下来我们就需要在客户端做测试 这里我用的是我自己的电脑 svn客户端的下载链接https://tortoisesvn.net/downloads.html 打开后根据自己电脑配置选择不同的安装包 (安装完记得重启电脑)这里安装步骤不就不说了 一直下一步就行了
3 c: z2 ^" q4 O* ~" s
& f9 n/ r. S1 w6 n" S% X7 h! `) k
重启完电脑后 右击鼠标 点击SVN checkout (svn捡出)下载代码
# a4 I/ v' Q ], G输入你的svn地址 地址请根据自己的设置自行更改
% i2 j# @$ Z9 U9 Y
4 H, M( ]" ]+ \, H! J5 \ a; `, H1 }1 Q5 h
然后会弹出框让你输入你的账号和密码 输入后即可下载 服务器端的代码 你会发现文件夹里 只有一个.svn 如果没有的请将你的隐藏文件夹选项去掉这是你的svn 就搭建好了( ?2 ]2 D) u7 `
9 V2 O! ^$ p8 b k+ T
" u. I% O& S! i6 {/ T0 S(svn客户端简单使用 svn update 更新代码 svn commit 提交代码)4 g5 f6 x/ G0 {: w
. _/ {- ?: m! [
& P1 L! ]0 J8 r. K% A4 J9 X
$ g$ \" W. c6 Y3 B Q1 Z$ f2 v7 o9 l可是这并不是我们想要的效果我们需要的是在web可以直接同步访问的所以我们要设置提交到svn的 代码能同步更新到web 根目录 svn 也是可以达到这种效果的 首先我们进入 web 根目录 这里我的跟目录在 /var/www/html/ 切换到 html目录下使用 svn co svn://192.168.1.35/blog 与网站根目录建立联系 同样的跟具体提示 输入自己设置的账号和密码并 输入yes设置保存
2 M0 ? ?. s. ]8 H( M+ E& J. @- u b. j! m
这时我们保存在版本库的代码就会被同步到网站根目录
" }( ]2 d) a8 z, ? a. Q0 t. i1 `: k: o8 ? s3 h! X
3 X8 @9 t; X3 \3 |) O
$ @) Y# l; X" Y1 y+ D2 F: c+ f9 U" X
! }# A$ ~5 T; K* ~; \- l" z; ^; ^' C: h8 C, a5 l1 Y9 m
|
|