管理员
论坛积分
分
威望 点
贡献值 个
金币 枚
|
一丶 SVN简介
. H. t, j: u: U- sSVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。(ps:百度百科抄的 可忽略)
/ m; F% {8 U! I1.准备工作" L+ A6 D. R. P1 Y) }
一台centos7 服务器 一台 客户端
2 C& z; @# K5 r- c————————————————% X# y. K) h* }+ h: I
1、验证是否安装了SVN8 w: l# s& @' R' Y) b. y
$ N8 `2 \" j) a5 |命令: # rpm -qa subversion% J9 l6 G+ r: R0 x: T$ U2 d0 n
, s2 K$ r% @1 Q! V8 `2 W( d" J% M" `如果安装了,输出对应的版本:subversion-1.6.11-15.el6_7.x86_64$ Z0 B1 ~" c9 {4 }
& X1 K/ f* R/ ~0 d& b5 U- s4 H否则,空白
! p. V |& V2 y
, U4 |% t3 h2 B* X1 m P2、安装SVN的命令
- w+ r+ m4 a" k. }
. ], H: `; n: I5 s' j0 O# yum -y install subversion
! n( U Z8 n4 G3 k( P# z' M( p/ j O/ f1 [$ w: O9 h
接下来使用# svnadmin create /home/svn/blog //其中blog为你的站点目录 /home/svn/为目录
, {+ @: @* N( H创建一个名为blog的svn版本库 ,进入blog目录 只要有以下目录就代表你的svn版本库搞好了( X# `: y6 b6 T. [ N% \+ U! t
* v! q: B B, U3 x然后我们进入‘blog’下的 conf目录 对svn进行配置,conf 下共有三个文件 authz 是对用户权限的配置 passwd是用户和密码的设置
2 y" L& q& B8 a" y" U1 ~9 g% @* o2 @! E2 j% e+ u; w& X! z* V
svnserve.conf是对使用的配置包括是否开启匿名上传 ,用户上传等(差不多就是那个意思)% _ ^5 P" Z: n+ h' q! O
) K5 _2 E) [" J: N0 \; D/ o
/ m- d1 S. N' h) q7 J9 H首先我们对svnserve.conf 进行配置 把箭头处的两行 前的#去除 同时要注意前面不能要留空格: M# d0 @4 Q. m# S
7 c) |% i: R- ^3 L% v: z# password-db = passwd
! O' k. Z b# ~1 |6 Q/ D' y" N
& i y4 X9 e' W v! A7 V# authz-db = authz( z5 ?: f6 c! t L
" _* @; |' k; x0 n3 o
4 m) @1 G5 d5 ~% }0 p* [然后编辑passwd 文件 写上自己要设置的账号和密码 注意前边不能有空格 并且不能有 #号 否则配置无效5 n9 ?: `/ I9 X3 B$ f. |
$ A, q( R6 O' l+ Z登录名=密码
5 T- b& H' P4 K2 `' `* J- q2 | A# ]1 B
user=123456
* x3 Q: i, e0 g, n' c/ [! A- k* l3 b8 j6 E5 S
0 {7 E. @; G' W& }# l8 l" Z5 \$ o" @! ~
最后编辑authz文件给让配置的账号设置权限(其中[blog:/] 设置的用户对blog下的所有文件都有设置的权限 r代表可读权限 w代表可写权限); x' a6 l" F% \/ M$ i- U1 z# F
) k; x! Y- ], U/ `3 O1 ^2 y$ s# * = r3 }6 I w6 C/ d5 Z; A) u8 c0 e, |" y
4 S; A/ m8 s( N
[/]
4 \" B& X6 @7 r) o4 f) [9 R2 a/ Q
* s9 w5 g* L& r' M, ^) kroot=rw
# T& @, a$ @9 a2 q, a4 _% G) X* p; b; v' z
这是用户的配置就完成了
/ [, l8 I- D; v7 k6 y
4 ?, A1 Z0 N$ P9 \; ~# J5 h接下来我们就需要开启svn svnserve -d -r /home/svn/blog 1 E' S$ \) d! @/ L. s( |
svnserve -d --listen-prot 端口 -r /data/svn/ssyleo: I6 U' p' l! e* s5 d; Z; {1 W7 w
- ?$ D* y1 [. X& v! {# T
使用此命令开启svn 根据自己设置的目录自行更改
9 Y: T4 i! `+ c$ Z) ^' _" F/ J$ c% Q5 n
使用netstat -nltp 命令 可以看到 svn的默认端口为3690 如果你是用的是阿里云服务器的话 还需要在安全组添加该端口,否则也会造成 客户端上传代码失败具体操作我在这里就不多讲了
- N) c! X2 J& B8 ?# @1 S
3 G0 f) L! b5 r( k: A+ {" u' r( X$ |% D
win下载svn工具9 t, H8 o! \8 j- H v
7 W! k; @, q( G) h接下来我们就需要在客户端做测试 这里我用的是我自己的电脑 svn客户端的下载链接https://tortoisesvn.net/downloads.html 打开后根据自己电脑配置选择不同的安装包 (安装完记得重启电脑)这里安装步骤不就不说了 一直下一步就行了4 F5 I" A* w6 ?4 s
5 c5 K! K6 c7 P# F( Z* N# R
- r; h5 f% @9 T& }1 \+ {0 ~$ O
重启完电脑后 右击鼠标 点击SVN checkout (svn捡出)下载代码
7 j+ g8 j6 j: ?2 u- Z% [输入你的svn地址 地址请根据自己的设置自行更改
2 G7 R, U3 W* F9 i4 ^8 d v2 G" k+ A1 v4 O7 H. R7 M" R
* K# J" M ^) v9 b( J: _2 \3 ]/ z
然后会弹出框让你输入你的账号和密码 输入后即可下载 服务器端的代码 你会发现文件夹里 只有一个.svn 如果没有的请将你的隐藏文件夹选项去掉这是你的svn 就搭建好了' K+ M9 V7 \. k: d
: c1 e1 D& h" O% S- s
8 W) P7 J/ ?& }3 ]/ Q) v
(svn客户端简单使用 svn update 更新代码 svn commit 提交代码)% V u1 Z2 v3 S: C
& j3 p1 I% j& e# r p
+ D7 N! o5 \1 X
5 Q% z5 X# v6 o! r/ S0 T' d
可是这并不是我们想要的效果我们需要的是在web可以直接同步访问的所以我们要设置提交到svn的 代码能同步更新到web 根目录 svn 也是可以达到这种效果的 首先我们进入 web 根目录 这里我的跟目录在 /var/www/html/ 切换到 html目录下使用 svn co svn://192.168.1.35/blog 与网站根目录建立联系 同样的跟具体提示 输入自己设置的账号和密码并 输入yes设置保存
1 n& M8 l& q" N; i8 ?% y# ?6 B' m$ U, L% g! R! \4 U6 ~/ y/ I
这时我们保存在版本库的代码就会被同步到网站根目录& Z( ^0 i, L5 j& m8 N
, a% X$ f: E; c+ h5 N, q% {! |0 d$ _
- p5 s* P4 E" _' C% N; F5 P; N4 }* I8 {3 ?. z
0 I4 e! y, T+ j/ a- m
& f! T5 H8 ~* p1 L* e4 E7 t- K# i7 p |
|