管理员
论坛积分
分
威望 点
贡献值 个
金币 枚
|
一丶 SVN简介1 o, U y& A" i7 `! m! {1 c
SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。(ps:百度百科抄的 可忽略)
$ e" u, C5 T: x) [1 b1.准备工作
- B ~; r+ v" `$ S8 e一台centos7 服务器 一台 客户端
4 ~9 n' U- W8 W7 ~% I1 e————————————————
5 A `+ k. i2 D" u1、验证是否安装了SVN
8 U1 T1 j5 |) u% [- H8 K' u4 f! L! n, r ~$ t- g; p+ O& m
命令: # rpm -qa subversion
1 Q; K% \" W( v1 M8 n R- s( I# R9 S0 V( o' s
如果安装了,输出对应的版本:subversion-1.6.11-15.el6_7.x86_64
) O: H) P- r3 b3 \; h0 Q6 C+ O3 N4 F% S0 D1 b: n, T7 r
否则,空白; f, i$ X& Q) n6 R
& Q# z' R& Q: W9 G; ~7 z* R
2、安装SVN的命令9 s3 q5 m, O3 o. l+ z( |2 h
; k/ Q/ M- m) K* w' V& H
# yum -y install subversion) H- ~( R* h! o7 J! b4 l
2 T7 N! g; f6 W. p/ h/ }. B
接下来使用# svnadmin create /home/svn/blog //其中blog为你的站点目录 /home/svn/为目录9 R Q+ ?1 `) B) F" R0 T
创建一个名为blog的svn版本库 ,进入blog目录 只要有以下目录就代表你的svn版本库搞好了
/ i+ e0 n$ V3 d6 S; x5 f" b: J' @ Q7 Z# K B3 f. c- _7 m% M
然后我们进入‘blog’下的 conf目录 对svn进行配置,conf 下共有三个文件 authz 是对用户权限的配置 passwd是用户和密码的设置; ?$ w& _+ W6 T, O2 A5 Y% C
) T# W$ S5 s' D
svnserve.conf是对使用的配置包括是否开启匿名上传 ,用户上传等(差不多就是那个意思)
+ C3 _+ y) J/ `/ R0 A* P
! S1 G4 p: ~: ^, I% N
: v% m C# T, R8 ]首先我们对svnserve.conf 进行配置 把箭头处的两行 前的#去除 同时要注意前面不能要留空格! J+ @# m6 U. H- b0 }# E! F
6 c4 |" Y+ T7 A2 K( y
# password-db = passwd; a" w5 ?' Q5 s m* L ^1 t
% k) Z9 X+ L1 C7 y" B) X+ Q) `( o
# authz-db = authz
' p4 ~$ K* G+ j$ [3 z9 G- f" Z* Q6 l2 |) I6 x
0 i" x5 C8 G _3 R8 l
然后编辑passwd 文件 写上自己要设置的账号和密码 注意前边不能有空格 并且不能有 #号 否则配置无效
2 B3 H+ N3 t M+ c6 K! U
; w S7 s; s( e) ~7 D! e登录名=密码; D# E( x+ U4 d3 y) @& t
+ U" B3 }6 P$ j1 O
user=123456
' \' h" Q$ v* T& C& q x
% Y8 N- q& \0 o; m- v3 c
" Z- d3 q, [0 e4 N最后编辑authz文件给让配置的账号设置权限(其中[blog:/] 设置的用户对blog下的所有文件都有设置的权限 r代表可读权限 w代表可写权限)- L! j9 s" [, P! [
& f( C2 n8 D1 m x
# * = r* I" g* u" l. M* c+ D( ^2 f
4 `8 }. k- W A. j0 l. N% ]
[/]
- X; [0 g% k+ _& e7 C- p. p9 }
4 _8 e2 H' @) e: }6 X7 sroot=rw
( T$ X( Q! k0 t7 a2 S% p1 r& d0 u1 l
这是用户的配置就完成了
/ ~: d. L& S/ L$ k+ ^+ q! J4 b) Q- V6 S1 U
接下来我们就需要开启svn svnserve -d -r /home/svn/blog
7 U+ _7 O4 R+ j6 R0 ~7 h Vsvnserve -d --listen-prot 端口 -r /data/svn/ssyleo
2 j- o# w5 a3 _7 B! M& _) O1 W+ l$ S; O
使用此命令开启svn 根据自己设置的目录自行更改! G; W% ?& [4 ?
! s9 k( T M* X$ y使用netstat -nltp 命令 可以看到 svn的默认端口为3690 如果你是用的是阿里云服务器的话 还需要在安全组添加该端口,否则也会造成 客户端上传代码失败具体操作我在这里就不多讲了
9 o1 r5 G! p- p& ?) }# `' \1 F, D6 n# U: x. V# m
1 P9 N- ^, Q& R* G" f- I8 [; Y
win下载svn工具
9 x( S4 e$ r* ^' W, [# E3 {7 J: S( t* W7 o( U
接下来我们就需要在客户端做测试 这里我用的是我自己的电脑 svn客户端的下载链接https://tortoisesvn.net/downloads.html 打开后根据自己电脑配置选择不同的安装包 (安装完记得重启电脑)这里安装步骤不就不说了 一直下一步就行了- ]. R0 R0 |7 U* n" L- k
7 `, [9 W4 I6 _( H) F \7 Z0 }* W
8 B5 k4 X" T$ }. W
重启完电脑后 右击鼠标 点击SVN checkout (svn捡出)下载代码
# s: B7 s3 U6 Q v输入你的svn地址 地址请根据自己的设置自行更改
& ~% o4 E& s! r( \
2 x2 a3 V8 y% f5 Q4 H+ |. p/ [/ i
' A5 n' T( k+ i; c p o, U然后会弹出框让你输入你的账号和密码 输入后即可下载 服务器端的代码 你会发现文件夹里 只有一个.svn 如果没有的请将你的隐藏文件夹选项去掉这是你的svn 就搭建好了2 S" f2 F3 U& c9 B: M: n! }4 S
* [/ F' J: C' t6 C; p2 g2 i9 U- n) b1 |- M
(svn客户端简单使用 svn update 更新代码 svn commit 提交代码)
9 v# r( g$ k$ t& A: J8 |+ z2 q4 F. o, R2 ]# E; L/ m: w
( |; e. O. _6 }
o5 O2 u1 k0 ^- d+ x
可是这并不是我们想要的效果我们需要的是在web可以直接同步访问的所以我们要设置提交到svn的 代码能同步更新到web 根目录 svn 也是可以达到这种效果的 首先我们进入 web 根目录 这里我的跟目录在 /var/www/html/ 切换到 html目录下使用 svn co svn://192.168.1.35/blog 与网站根目录建立联系 同样的跟具体提示 输入自己设置的账号和密码并 输入yes设置保存
8 r6 ]6 j9 A4 }% r
5 F1 ?9 Z/ B( x这时我们保存在版本库的代码就会被同步到网站根目录' s' L/ Z3 }6 w4 b' D* l+ m
% Q) ^3 Y9 R7 ]) ?7 F
* H3 F6 Y, t1 y% `: Z' ]
* p8 S) F! {! Q* _" q1 j% W4 z/ d
' W) b+ N @& e0 |: j
|
|