管理员
   
论坛积分
分
威望 点
贡献值 个
金币 枚
|
一丶 SVN简介
1 i+ G& ]/ I, K1 c: `( @; B6 ?SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。(ps:百度百科抄的 可忽略)
) h+ o5 }' [$ q% i2 h5 [. d3 ]1.准备工作4 i/ m: g0 E! j% C; T( m' i, B3 ]
一台centos7 服务器 一台 客户端
; P2 p e) ]5 P2 z————————————————
) ^2 Y- H- Z0 R4 l, c3 E$ G1、验证是否安装了SVN; }, e# T0 `) H, k2 ?' T
" r5 I( L1 {& ^% m5 q! ?命令: # rpm -qa subversion
2 z H: J" m, h/ Q+ b8 h/ i/ t! [; I, C4 J& R2 X
如果安装了,输出对应的版本:subversion-1.6.11-15.el6_7.x86_64
8 l k2 h0 V1 @- h" a
h8 X$ X7 S3 ]- n% \$ l否则,空白
s3 I& o- U o1 F J+ q
, k2 }- j% b: V( A: @2、安装SVN的命令& o, T8 W9 Z+ ], y: x) W
/ \: K7 T7 Y D
# yum -y install subversion2 h0 n! v/ t3 c/ j2 p
/ W4 x; C. W$ R) H接下来使用# svnadmin create /home/svn/blog //其中blog为你的站点目录 /home/svn/为目录
6 C9 @3 n1 }/ a, p r( o' I创建一个名为blog的svn版本库 ,进入blog目录 只要有以下目录就代表你的svn版本库搞好了
% {& B; ~1 \ p1 J i
8 R n4 C; \& @& G0 o0 Q0 {5 U' X然后我们进入‘blog’下的 conf目录 对svn进行配置,conf 下共有三个文件 authz 是对用户权限的配置 passwd是用户和密码的设置
4 [% X. X7 A7 o
- r7 Y2 ~4 U! Ksvnserve.conf是对使用的配置包括是否开启匿名上传 ,用户上传等(差不多就是那个意思)
, H- r7 d" } k/ `& K3 O3 m) _
2 C7 p& n- D1 L y. R) [9 H# z' x
首先我们对svnserve.conf 进行配置 把箭头处的两行 前的#去除 同时要注意前面不能要留空格
+ K" | v" J! \, V6 I
8 W* A3 l; U. S4 Z# password-db = passwd/ L. z, a4 U0 B* ^. M2 Y
8 ~5 P7 Q* W2 ^) J R5 M
# authz-db = authz, N# B5 I$ O. [8 G6 H
, s" R- _3 a8 k
* h$ M1 j1 s$ o9 K+ ^: a然后编辑passwd 文件 写上自己要设置的账号和密码 注意前边不能有空格 并且不能有 #号 否则配置无效
) E/ s* m# T$ y9 b; T6 \9 ~+ r9 l9 b" D
登录名=密码
! s$ b. b# B8 ^. y8 T" w2 n, f* ? q! e( w2 C) K
user=123456
2 M: E8 i) o2 B4 g- ] l8 y
5 Y! Q2 }) M) r: o2 }. _5 y1 }0 g$ G/ M4 H9 P( R
最后编辑authz文件给让配置的账号设置权限(其中[blog:/] 设置的用户对blog下的所有文件都有设置的权限 r代表可读权限 w代表可写权限)
% J3 i# x- [6 c, o9 |
# W5 q0 t5 _% P# Z9 t( u( ]# * = r
6 \4 W6 A- O5 n8 P- X ~
9 B& i" J& [* D) _[/]7 R, T9 q: F+ p9 }" o9 i! t5 E
0 y5 m3 B; T2 ]8 Yroot=rw( h$ n& I* [' J
+ _4 \% ^$ ^% D) X: F& ~, Q7 j
这是用户的配置就完成了8 S8 S* b9 m# j+ G* l" c" B
, U: P$ x4 G; m$ H; d接下来我们就需要开启svn svnserve -d -r /home/svn/blog # W+ \0 D5 M- k8 m3 C. Y, C
svnserve -d --listen-prot 端口 -r /data/svn/ssyleo
( f# E6 F, Q2 B& P
% \, \1 n' f& z5 F E2 ~! J使用此命令开启svn 根据自己设置的目录自行更改' u% x; v7 G9 e6 J8 Y) G
4 l7 p {$ a! c
使用netstat -nltp 命令 可以看到 svn的默认端口为3690 如果你是用的是阿里云服务器的话 还需要在安全组添加该端口,否则也会造成 客户端上传代码失败具体操作我在这里就不多讲了' Z7 |" ?& { m) w9 G
m9 p8 `. ~; v* x* E+ }. R- [
; U! I+ }" f+ N1 l" e/ v" I. wwin下载svn工具
: p6 S0 n A' c9 Z" }
# A% W: E+ I# j7 x K接下来我们就需要在客户端做测试 这里我用的是我自己的电脑 svn客户端的下载链接https://tortoisesvn.net/downloads.html 打开后根据自己电脑配置选择不同的安装包 (安装完记得重启电脑)这里安装步骤不就不说了 一直下一步就行了9 J; ]2 L) e; H |
, h y% v1 g2 K4 k2 v2 x
6 _; V$ Y7 d! R: p. \# y2 e' g重启完电脑后 右击鼠标 点击SVN checkout (svn捡出)下载代码: ?# H& I( A' A$ ]3 }
输入你的svn地址 地址请根据自己的设置自行更改+ E) ^4 x& x6 W0 e9 m" b+ f+ A
* b( W0 X6 D3 @/ K! g( W7 x9 @: s4 B! M$ m0 M: t0 P
然后会弹出框让你输入你的账号和密码 输入后即可下载 服务器端的代码 你会发现文件夹里 只有一个.svn 如果没有的请将你的隐藏文件夹选项去掉这是你的svn 就搭建好了$ O4 `) W! `& g& m; j+ ^
& I% i) z4 Z- B
# I% P1 I1 C/ L1 |& N
(svn客户端简单使用 svn update 更新代码 svn commit 提交代码)
, D9 z, S$ X, A6 U# q8 W& z L. R# d; d2 T- ?$ |
' u" b. J2 |$ I: Y! E
8 ]" h5 e- ^2 P5 Z可是这并不是我们想要的效果我们需要的是在web可以直接同步访问的所以我们要设置提交到svn的 代码能同步更新到web 根目录 svn 也是可以达到这种效果的 首先我们进入 web 根目录 这里我的跟目录在 /var/www/html/ 切换到 html目录下使用 svn co svn://192.168.1.35/blog 与网站根目录建立联系 同样的跟具体提示 输入自己设置的账号和密码并 输入yes设置保存
( j6 r6 `/ L9 j8 O/ F" `: A4 \# Y% d2 ?! k9 t' m0 V" Y$ U
这时我们保存在版本库的代码就会被同步到网站根目录
7 E3 Q4 X; ^" J2 J# {, c4 ?0 O; D/ U
3 D( t, D3 g' @, }3 t ~
; r( [; `2 L1 H$ G
. O3 y+ h' z& ]3 _( e
4 Z, v2 U+ f9 A2 y2 Q- r |
|