管理员
   
论坛积分
分
威望 点
贡献值 个
金币 枚
|
一丶 SVN简介$ d0 O3 S: x- I" P3 @8 _) P
SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。(ps:百度百科抄的 可忽略)
4 w" {% w% m& K/ ]( e3 E1 x5 z H1.准备工作/ b, }, @& _+ V& q' p$ v
一台centos7 服务器 一台 客户端& r: w; R/ [! N2 q# D
————————————————
0 V6 k2 T8 W% w1、验证是否安装了SVN
. m- h; C. ^# }7 k- q- a% x# {$ X m2 u2 z
命令: # rpm -qa subversion$ A) f* w. |( i- u3 L
, d7 Q$ S( o0 P( B如果安装了,输出对应的版本:subversion-1.6.11-15.el6_7.x86_64# A! E* H8 x/ k/ _+ ]
2 s+ G: F l" ?# i否则,空白9 m" P2 V' ~4 H3 W4 f# e
* H$ T- l4 Q) f M. A6 ]2、安装SVN的命令
# y4 H* c" W) q3 [/ S
# \2 D" C" u& c% z& r: l# yum -y install subversion* L, p2 q3 r3 G) I# {
$ j8 _5 v/ y& R7 X接下来使用# svnadmin create /home/svn/blog //其中blog为你的站点目录 /home/svn/为目录. M. V' P, ^, I/ J) p5 n, W
创建一个名为blog的svn版本库 ,进入blog目录 只要有以下目录就代表你的svn版本库搞好了
9 V+ U4 o4 l0 @3 S2 c+ W6 W$ i6 f2 K
然后我们进入‘blog’下的 conf目录 对svn进行配置,conf 下共有三个文件 authz 是对用户权限的配置 passwd是用户和密码的设置; ~9 p5 Z6 Q! N$ m. ?1 \9 d
( z) e( h% B! H& s% j4 Esvnserve.conf是对使用的配置包括是否开启匿名上传 ,用户上传等(差不多就是那个意思)
+ P1 ]* O! P2 I/ i2 u% X
; k$ a, k/ ~1 D4 x
/ U! u" `- L/ ?3 O5 \8 n5 p& R3 b首先我们对svnserve.conf 进行配置 把箭头处的两行 前的#去除 同时要注意前面不能要留空格! ^, \! J% p" v- u# q. n
3 d6 X4 ?$ n+ A+ O1 x
# password-db = passwd' h) A: j; E4 `8 R1 C
& z* c2 p$ m2 x: A
# authz-db = authz
/ D; S( g9 f/ \; }5 v4 W( B+ e' a- W- m0 J1 Y. ^# J3 H
. K0 }# C8 S v1 Z1 P5 Y" }
然后编辑passwd 文件 写上自己要设置的账号和密码 注意前边不能有空格 并且不能有 #号 否则配置无效0 o8 P7 U8 B8 L# M% i
4 O3 |% T. g4 [$ B* B登录名=密码5 J. P$ G/ K2 E6 E" r- Z
3 `" [3 Y7 I; A8 a l3 o
user=1234567 U, h0 g+ g& j. ^/ ^
x, y, [7 \. h- e% [- C) K9 ~6 W- v$ J# t# w* V
最后编辑authz文件给让配置的账号设置权限(其中[blog:/] 设置的用户对blog下的所有文件都有设置的权限 r代表可读权限 w代表可写权限)
9 R1 l$ S9 x- J+ R; C$ K6 y
) h2 }) ~2 ^( H4 r0 s# * = r f- a% C; X, G) V+ j, b
" e3 f! r8 U" T+ J[/]
" ^+ W( d8 b* N) D% w! q
! N. J. L: k4 {# H. M( y- W/ aroot=rw4 l7 r& J2 ~9 m) L! D
p% X- |4 U; R* n! P4 S
这是用户的配置就完成了
: Y" V# X0 ?, V$ b6 H' M/ |
* O( T" k i$ P0 Y- ?接下来我们就需要开启svn svnserve -d -r /home/svn/blog 9 E! v" `- o$ y3 k0 t" ^" b
svnserve -d --listen-prot 端口 -r /data/svn/ssyleo7 ]- Y8 _1 U3 a
7 p5 W6 I3 ?9 b( g- P; [使用此命令开启svn 根据自己设置的目录自行更改
- f2 \# l [1 U" S }7 k s6 Y4 o) f" x0 S( `7 t$ v# y$ [ f
使用netstat -nltp 命令 可以看到 svn的默认端口为3690 如果你是用的是阿里云服务器的话 还需要在安全组添加该端口,否则也会造成 客户端上传代码失败具体操作我在这里就不多讲了
9 T8 C9 W% m6 |3 Z0 U# W* f S7 U% a* q5 c. F
1 ~8 c3 |/ w1 u$ [. t) G3 T+ u
win下载svn工具
9 U0 y4 U3 V& C; d4 j# Y0 i3 w! Q! N' d% b% X0 x+ T
接下来我们就需要在客户端做测试 这里我用的是我自己的电脑 svn客户端的下载链接https://tortoisesvn.net/downloads.html 打开后根据自己电脑配置选择不同的安装包 (安装完记得重启电脑)这里安装步骤不就不说了 一直下一步就行了
1 f4 R3 R) H) N* `1 r
3 `' ]/ j* A. ~3 ?: ?* I) d/ ~' d8 Z
重启完电脑后 右击鼠标 点击SVN checkout (svn捡出)下载代码
1 P+ v. T# C& x$ l2 O; ^ u1 Q输入你的svn地址 地址请根据自己的设置自行更改' g3 C& W' `3 G8 A$ u
9 F' u1 }! H; {. z
8 S1 Y0 U/ z* U* q" X
然后会弹出框让你输入你的账号和密码 输入后即可下载 服务器端的代码 你会发现文件夹里 只有一个.svn 如果没有的请将你的隐藏文件夹选项去掉这是你的svn 就搭建好了) Z& f% J- G1 |, {" m) Z' V6 w
G# r! r8 m6 D
% n4 p! Y' B# N(svn客户端简单使用 svn update 更新代码 svn commit 提交代码)0 C- C0 p) H2 M
, }8 u1 `: o. e/ e% P/ }
% I( z L3 G6 w. n
' U" m0 ] Y$ o! r- A# Y) ^可是这并不是我们想要的效果我们需要的是在web可以直接同步访问的所以我们要设置提交到svn的 代码能同步更新到web 根目录 svn 也是可以达到这种效果的 首先我们进入 web 根目录 这里我的跟目录在 /var/www/html/ 切换到 html目录下使用 svn co svn://192.168.1.35/blog 与网站根目录建立联系 同样的跟具体提示 输入自己设置的账号和密码并 输入yes设置保存
1 P5 U5 c v3 { T- N. Z7 w' E6 ^8 T8 {5 F: p! Y# h# t$ k; E5 l5 d
这时我们保存在版本库的代码就会被同步到网站根目录
9 S; K3 ?& h) {9 c' d$ a! h, |: U& @* K6 `1 g& H% A( ^
6 y% ~2 W) l* s2 ?
7 \( j1 ?3 L4 T! F3 \$ B# m$ \0 ^6 K+ T2 x3 o" }+ p
; R `; k; ^: l4 k2 {! r+ i |
|