管理员
   
论坛积分
分
威望 点
贡献值 个
金币 枚
|
一丶 SVN简介+ {; V. l8 l/ W, O
SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。(ps:百度百科抄的 可忽略)
$ x( T7 l7 K' {1 G- ?) U0 l, m1.准备工作
$ E0 f- A& A" t一台centos7 服务器 一台 客户端2 q1 I4 m& I2 d
————————————————
% U9 G/ f c+ X: G ~$ q- G& p1、验证是否安装了SVN) v5 P2 ^" a9 C1 E4 N! Z) K
- ~# `' p6 j4 q& c% H, q/ Q
命令: # rpm -qa subversion
; }% Q0 q6 w2 ~8 ]4 T# A6 n5 v5 G# e" n# E( Z5 b1 P4 Q2 G
如果安装了,输出对应的版本:subversion-1.6.11-15.el6_7.x86_64
' x3 `; \3 M. C: {% U2 V/ M3 \5 _- `, R$ I& ~
否则,空白: W- \+ C D. `7 q1 g
i5 T, i+ M* p% \* w3 G
2、安装SVN的命令
+ w9 M$ M* A$ r" ^3 x; I1 |* q
# yum -y install subversion
, m# E {' D0 Z! Q
% H8 A; j& l% H: ~9 M" P7 y接下来使用# svnadmin create /home/svn/blog //其中blog为你的站点目录 /home/svn/为目录- @1 m$ x0 ~; W- v9 Q
创建一个名为blog的svn版本库 ,进入blog目录 只要有以下目录就代表你的svn版本库搞好了
. B7 a1 q0 C) L, ?; R# |
1 W9 K/ t% c# f然后我们进入‘blog’下的 conf目录 对svn进行配置,conf 下共有三个文件 authz 是对用户权限的配置 passwd是用户和密码的设置8 t( z' s* H& m( u( w' P1 [# ?2 k
: n3 p: V7 t- d$ l, P( G
svnserve.conf是对使用的配置包括是否开启匿名上传 ,用户上传等(差不多就是那个意思)& p2 {( x" g) p. I: U
0 E* ~2 m- L. E7 t
8 r6 q7 R/ J5 h8 l; D首先我们对svnserve.conf 进行配置 把箭头处的两行 前的#去除 同时要注意前面不能要留空格1 }; L# D% t2 ]$ V
/ [$ G& @ P& U) _+ M1 D
# password-db = passwd- r! @ b/ [0 A& F' q7 m$ @
* N; s$ k! t( T- t# Y# authz-db = authz$ ^" w# c# i z9 x: V* }; |6 r9 w2 y4 l
5 B) A. H5 w" D+ I' q: F! w- M# N! N. U
然后编辑passwd 文件 写上自己要设置的账号和密码 注意前边不能有空格 并且不能有 #号 否则配置无效( p+ q$ n9 J5 e5 |! q
2 f& |) O, w) s9 s! G登录名=密码2 M* O" k8 H7 ^2 A
% Q, [6 l/ ^ N7 F
user=123456
2 n; Q& f* P1 }( W7 L3 q- }6 H
: Q' U* \: B# i& H9 P: I
3 X) z/ _3 {+ o, e% M最后编辑authz文件给让配置的账号设置权限(其中[blog:/] 设置的用户对blog下的所有文件都有设置的权限 r代表可读权限 w代表可写权限)
6 J8 Z. h: t6 }
+ ?) I' ?7 q' V3 s# * = r9 C1 i6 u6 S2 f( y+ N. E6 B
1 G! g, ]: j' y. r9 V[/]; Y; j4 D* w& x* z% Z+ l
: U! ]( w$ ^* e0 I
root=rw
: u; ]6 C H. Z7 F0 ^6 h2 a
2 b4 F) m8 ]# p H0 V% u3 _4 f. Z这是用户的配置就完成了8 O1 A: d/ s3 |9 E8 @# ~8 f
% k3 f! N8 q! f5 ]接下来我们就需要开启svn svnserve -d -r /home/svn/blog 6 v% g6 s# U# @
svnserve -d --listen-prot 端口 -r /data/svn/ssyleo2 j4 v' w& O# J. t% O
. L) G- Y& w7 v3 {' g- q使用此命令开启svn 根据自己设置的目录自行更改8 C" p0 A9 _4 t! ?
0 n$ G9 Q! ^3 g6 m3 C1 V; M
使用netstat -nltp 命令 可以看到 svn的默认端口为3690 如果你是用的是阿里云服务器的话 还需要在安全组添加该端口,否则也会造成 客户端上传代码失败具体操作我在这里就不多讲了
5 \# ?! Q3 B1 g; K# h7 T
# D" I$ _4 a; s& h% J% Y$ r! T: r1 k
7 D, \9 m* x+ r7 h8 jwin下载svn工具
! U# N5 ]# A/ x/ R! \( w5 P* S
5 z& s7 o$ H) C! m接下来我们就需要在客户端做测试 这里我用的是我自己的电脑 svn客户端的下载链接https://tortoisesvn.net/downloads.html 打开后根据自己电脑配置选择不同的安装包 (安装完记得重启电脑)这里安装步骤不就不说了 一直下一步就行了
7 j1 v+ j6 K2 d$ F; S2 y, F
: N- A R2 ~- _+ M2 K
2 _4 C0 f: A" B7 j5 {0 }1 ~* \重启完电脑后 右击鼠标 点击SVN checkout (svn捡出)下载代码- i) c4 X4 j9 k; H; e; {
输入你的svn地址 地址请根据自己的设置自行更改
5 |6 G; v' U7 s* D' U3 ^4 y( T
* b; I! [6 `) \( C! C
4 {5 p7 h- w) d/ W* R+ J7 v然后会弹出框让你输入你的账号和密码 输入后即可下载 服务器端的代码 你会发现文件夹里 只有一个.svn 如果没有的请将你的隐藏文件夹选项去掉这是你的svn 就搭建好了
* G5 O* e" I, g1 O: s! ? i' {
0 N- ^; ~2 e' Z0 R# J% [3 a
4 D7 f, y) D: P3 Q! S(svn客户端简单使用 svn update 更新代码 svn commit 提交代码)
# l0 x! y1 U5 z9 k3 {" R8 I7 O8 u( A4 Y# i
3 x8 ~" E2 Q( s; p0 Y
/ X) _' D2 _1 [, q* V% `可是这并不是我们想要的效果我们需要的是在web可以直接同步访问的所以我们要设置提交到svn的 代码能同步更新到web 根目录 svn 也是可以达到这种效果的 首先我们进入 web 根目录 这里我的跟目录在 /var/www/html/ 切换到 html目录下使用 svn co svn://192.168.1.35/blog 与网站根目录建立联系 同样的跟具体提示 输入自己设置的账号和密码并 输入yes设置保存
3 Q3 V4 E( [6 W5 e5 B
: |- Z" ]6 B2 W7 Q# m+ v这时我们保存在版本库的代码就会被同步到网站根目录
! M# e- `) Q: v9 A1 ]/ v
- K& k8 r x+ a, U
E3 v7 L; N+ k
: [2 D- q3 V3 J* z1 k+ d9 R L+ d, D( t" \( }# x
- [( g; U- u m3 m
|
|