管理员
   
论坛积分
分
威望 点
贡献值 个
金币 枚
|
一丶 SVN简介7 g+ K4 F& j. v
SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。(ps:百度百科抄的 可忽略), x; ~' R: b" [0 B4 j* e5 h. C$ i5 r
1.准备工作( _) G% W; J9 G! b
一台centos7 服务器 一台 客户端
8 J5 {" `% M, Y$ f h# n3 y————————————————* Q5 Y/ S! Q) {. f# }& c
1、验证是否安装了SVN
7 p$ B# M+ W$ f) v8 ~% J
7 a, j! {) _6 H f: B2 F7 }3 y5 d; L, L命令: # rpm -qa subversion
; Y6 J& K8 k% b0 \
! j e! w' M8 Y* ?0 U9 d' d如果安装了,输出对应的版本:subversion-1.6.11-15.el6_7.x86_64
2 @! Z/ B" c3 S
. g& G! V9 B' b1 M; c8 U8 L; e j, y& l否则,空白. V6 X1 n# K& H% c, v+ j
1 {: n/ z( U0 [8 ~4 z, X
2、安装SVN的命令) E1 |% k& |( ^0 n, {
N2 w2 ?5 _$ s9 f1 i: F, |: z
# yum -y install subversion
7 @) I' D$ Y( k. u+ `4 U2 ^3 G
- `& ]! ]# G7 G( n接下来使用# svnadmin create /home/svn/blog //其中blog为你的站点目录 /home/svn/为目录4 d0 C3 d4 {$ B( @1 w; t
创建一个名为blog的svn版本库 ,进入blog目录 只要有以下目录就代表你的svn版本库搞好了- d9 c! a, b7 s, h6 q9 D- {& Q
* I% M0 q8 j0 ]( B5 N# D1 b然后我们进入‘blog’下的 conf目录 对svn进行配置,conf 下共有三个文件 authz 是对用户权限的配置 passwd是用户和密码的设置
$ T, q2 K; q0 T$ i
/ P* @* E. r! {+ Q# Hsvnserve.conf是对使用的配置包括是否开启匿名上传 ,用户上传等(差不多就是那个意思)
5 |) d) ~& b6 n' O/ V2 `% e
9 E3 S. H6 ]# E( \1 x& V. ^+ t( B2 S9 W: i5 W
首先我们对svnserve.conf 进行配置 把箭头处的两行 前的#去除 同时要注意前面不能要留空格1 ]# f2 z# S* Z2 I/ A. w9 h
( _! Z( ^' v) _6 r/ s
# password-db = passwd
5 s: I; F7 F" q9 {' }8 _2 j. D; ?5 H: @: B$ ~
# authz-db = authz+ o- J* ^, k: ~$ p# K7 S
$ q T* v, v7 `& I; _) Z
6 F* ~* [8 O% Q9 n4 H, S
然后编辑passwd 文件 写上自己要设置的账号和密码 注意前边不能有空格 并且不能有 #号 否则配置无效2 z6 W( T" l" d4 h/ B. @/ |
$ C1 x/ S7 o# `7 ? ^( k* q9 K }登录名=密码
6 b% Y6 Y0 j" i6 G( R7 y
1 Z4 z7 L2 ~3 j$ E+ D2 J! F: f8 m- Wuser=123456
: D$ D4 Q3 t# ^2 n$ H1 V4 {' B4 t" E- ]3 \
. `! ^7 c* V& H2 u7 q( V最后编辑authz文件给让配置的账号设置权限(其中[blog:/] 设置的用户对blog下的所有文件都有设置的权限 r代表可读权限 w代表可写权限)- I% _5 |+ i B7 g
; k7 P) g1 _3 j
# * = r
. R' x0 N3 u2 \, ^( v; _8 j7 R
' X8 ~2 E5 q6 m$ g& ?[/]) ?4 V: [4 H* p0 M3 @; M
$ ?5 F+ [& D9 \6 R+ Yroot=rw; S/ r2 X t6 j( ^
2 n# q* q( G; K4 D" L这是用户的配置就完成了- F" q9 z1 ]8 _. _8 ^7 |
, r8 |) ?5 j& K
接下来我们就需要开启svn svnserve -d -r /home/svn/blog $ [: p6 h$ e& r4 s8 A8 N3 C+ u
svnserve -d --listen-prot 端口 -r /data/svn/ssyleo0 F& L0 k& j, S9 u3 y' v
! l4 k/ c: z8 I3 d" `! m0 R* Y使用此命令开启svn 根据自己设置的目录自行更改
+ j9 q2 C, q! s/ U9 W
/ Q6 z: Y! @/ o. Z$ M使用netstat -nltp 命令 可以看到 svn的默认端口为3690 如果你是用的是阿里云服务器的话 还需要在安全组添加该端口,否则也会造成 客户端上传代码失败具体操作我在这里就不多讲了1 n( d1 {. N8 i6 a/ u2 n$ x
7 A) V, O. M+ D F( k
' a! g& S/ ~/ Owin下载svn工具. c- W% I q9 `# ?7 ^
! {: l+ j1 ?, M* _/ u' U9 G接下来我们就需要在客户端做测试 这里我用的是我自己的电脑 svn客户端的下载链接https://tortoisesvn.net/downloads.html 打开后根据自己电脑配置选择不同的安装包 (安装完记得重启电脑)这里安装步骤不就不说了 一直下一步就行了
v. Z% x- l4 l/ g
2 _$ ?) H2 {, c# ]# A2 Q: i
6 g6 j! o' {) w, E重启完电脑后 右击鼠标 点击SVN checkout (svn捡出)下载代码& L; S0 p2 y! ^
输入你的svn地址 地址请根据自己的设置自行更改9 N; K! I1 `- Q9 E) g `4 C
) d+ p, G0 j, X f0 I* ]- H
: E' @. B* I# v( Z% R) K5 D3 G
然后会弹出框让你输入你的账号和密码 输入后即可下载 服务器端的代码 你会发现文件夹里 只有一个.svn 如果没有的请将你的隐藏文件夹选项去掉这是你的svn 就搭建好了
1 [1 V2 u7 u2 K: e( y; P, F; j
! d$ y1 b* }$ J
- q7 m' G* D& O(svn客户端简单使用 svn update 更新代码 svn commit 提交代码)
( I0 a: X/ M' I+ w) S6 F$ ~- Q. N1 l o7 `. j" M8 p
% q0 L9 F5 I6 f a
# _; X/ i+ t! J5 _+ s, B/ @
可是这并不是我们想要的效果我们需要的是在web可以直接同步访问的所以我们要设置提交到svn的 代码能同步更新到web 根目录 svn 也是可以达到这种效果的 首先我们进入 web 根目录 这里我的跟目录在 /var/www/html/ 切换到 html目录下使用 svn co svn://192.168.1.35/blog 与网站根目录建立联系 同样的跟具体提示 输入自己设置的账号和密码并 输入yes设置保存1 p3 T# u" R: q1 ~+ W$ U
+ ^5 k+ \1 X0 i; j x这时我们保存在版本库的代码就会被同步到网站根目录
, [6 {% f, Q7 z' r: T$ E: s
, O6 Y2 i( g: M$ a' J6 |& K1 }
7 b% h h8 x5 L( D3 O0 V- _/ h( e, y2 W! N
* M, g5 ~3 l9 }7 }
$ r; ?; _1 O! y8 f3 t- J1 p
|
|