管理员
   
论坛积分
分
威望 点
贡献值 个
金币 枚
|
一丶 SVN简介$ z% m, P' u$ T
SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。(ps:百度百科抄的 可忽略)
1 Z. X/ L2 e2 e. v4 y1.准备工作1 @3 J* J" |/ o F
一台centos7 服务器 一台 客户端
' W2 N9 c7 a, i1 T. ]————————————————
! _' h" ]7 {9 Z8 {4 d# J& K# ~2 Y1、验证是否安装了SVN+ A0 Z' f- q4 E
0 M- W% h% B, ?3 u命令: # rpm -qa subversion# Y/ ], `/ |2 `6 r# u
) k; _( c9 o3 K) B0 |
如果安装了,输出对应的版本:subversion-1.6.11-15.el6_7.x86_64
; G) A4 f( i3 O. c7 I4 a" o7 z( m
4 b2 k) ~5 O, a/ i0 b否则,空白$ K( o: M7 v- x+ k4 d7 K
, w8 Z2 r* E" L1 Y) a2、安装SVN的命令
|) w/ m, t! W/ x& | d# \
0 b! w: E4 j5 h C1 `3 X# yum -y install subversion* A0 h) Z- j' Z% ~' w
! q/ Q# N' [' W [, p' s
接下来使用# svnadmin create /home/svn/blog //其中blog为你的站点目录 /home/svn/为目录
) G7 a1 K* p8 d4 i: ^2 b3 k5 O: F创建一个名为blog的svn版本库 ,进入blog目录 只要有以下目录就代表你的svn版本库搞好了9 Q0 I2 v/ q& d& R
8 c4 N# Y# @6 ^" p+ L
然后我们进入‘blog’下的 conf目录 对svn进行配置,conf 下共有三个文件 authz 是对用户权限的配置 passwd是用户和密码的设置8 {+ z* M5 [! ^, }' t! r# |
, p' a" J; O, ?
svnserve.conf是对使用的配置包括是否开启匿名上传 ,用户上传等(差不多就是那个意思)
" h5 v7 i% {8 [
4 X8 T! p& u2 N( A" Z9 V% V; O+ ^# M: U$ l2 t
首先我们对svnserve.conf 进行配置 把箭头处的两行 前的#去除 同时要注意前面不能要留空格
. H1 p& L7 _& e4 P* x8 ^
( t& I8 v3 ]3 T7 |# password-db = passwd/ M8 g8 L$ H" V: o/ |# O
6 \! z/ y$ X1 N; D7 t T c4 M
# authz-db = authz
# c0 H |% ~7 v- l( `" e% L" ~1 j4 F# M4 I4 `, Q7 a
3 t5 F! F, ~- A8 }然后编辑passwd 文件 写上自己要设置的账号和密码 注意前边不能有空格 并且不能有 #号 否则配置无效5 x8 l' [& I+ f& z8 W
9 C r) ^) W. {% r2 |% K
登录名=密码
% k. R" M7 o, E( i5 F5 L; @( \4 m# |8 f2 j' Y$ C1 b2 B/ V/ f
user=123456
8 }. |3 W/ \7 h5 a0 ?; _! v2 C) X2 k6 ^
' E3 i" _7 ^5 L9 h% ^& q4 ]; R' m
最后编辑authz文件给让配置的账号设置权限(其中[blog:/] 设置的用户对blog下的所有文件都有设置的权限 r代表可读权限 w代表可写权限)
! x: ?9 c& j4 h( b6 T
0 C& ^" k4 O; g. p- L j# * = r0 n7 f/ R! E; `9 T
7 w) V) _4 D; D
[/]4 e3 m* D; _6 s! k) e, P$ K
7 d( {$ O$ P) iroot=rw9 c& W% O1 C2 L" _2 a1 W
; W8 U) D' A+ o) ^
这是用户的配置就完成了4 j1 J- [1 U$ q, v# n0 X* b
9 c; Y/ }1 h( v: N6 ^, x/ y, B
接下来我们就需要开启svn svnserve -d -r /home/svn/blog , J ]7 L9 }% I. ~6 I8 T
svnserve -d --listen-prot 端口 -r /data/svn/ssyleo
: ~7 y, F9 x J- H7 L7 e- h* f: p6 n2 N2 u" I! L6 n
使用此命令开启svn 根据自己设置的目录自行更改
1 p# g6 T0 x9 }2 c! u3 O8 T' L+ }9 x5 I$ b. ^
使用netstat -nltp 命令 可以看到 svn的默认端口为3690 如果你是用的是阿里云服务器的话 还需要在安全组添加该端口,否则也会造成 客户端上传代码失败具体操作我在这里就不多讲了
# s4 q- |# y; s- W, ?1 ~* V9 W- ]3 Q) A8 Z6 ]
t2 a* ^) s, Awin下载svn工具
?% F- ]: _# f( n9 j4 {
& c* |7 p1 T; K+ H: G( C+ H接下来我们就需要在客户端做测试 这里我用的是我自己的电脑 svn客户端的下载链接https://tortoisesvn.net/downloads.html 打开后根据自己电脑配置选择不同的安装包 (安装完记得重启电脑)这里安装步骤不就不说了 一直下一步就行了. b1 F& U$ A: a
+ O$ O5 _* @8 ` \ L! ~
7 l3 Y" c& y" Z4 g; I
重启完电脑后 右击鼠标 点击SVN checkout (svn捡出)下载代码
3 I9 g% n8 i/ a输入你的svn地址 地址请根据自己的设置自行更改& |3 b3 ?3 R' f/ C
; T- a& U9 t6 j2 S; V4 a, k; E8 w! A! n* C7 `
然后会弹出框让你输入你的账号和密码 输入后即可下载 服务器端的代码 你会发现文件夹里 只有一个.svn 如果没有的请将你的隐藏文件夹选项去掉这是你的svn 就搭建好了
0 c2 _: a; ^: l/ c
0 D) I K6 j5 n0 `* M
v) l% O/ D, s5 K7 L! S1 C- w( C" z(svn客户端简单使用 svn update 更新代码 svn commit 提交代码)
0 }5 a$ O i3 @4 w- \* ~, x' N/ i( V
, ]& Q0 _6 \% v8 M9 S8 f) d4 B* f2 L4 l9 k6 n5 K
可是这并不是我们想要的效果我们需要的是在web可以直接同步访问的所以我们要设置提交到svn的 代码能同步更新到web 根目录 svn 也是可以达到这种效果的 首先我们进入 web 根目录 这里我的跟目录在 /var/www/html/ 切换到 html目录下使用 svn co svn://192.168.1.35/blog 与网站根目录建立联系 同样的跟具体提示 输入自己设置的账号和密码并 输入yes设置保存2 ~: Z6 X1 L. M a5 k9 T6 m
{: y: N3 j0 c: n这时我们保存在版本库的代码就会被同步到网站根目录6 h% w1 F! |/ h$ C/ F1 i7 z& c
3 L8 T7 ?# u. h
/ u+ a9 k6 e, b; S) G, N
) E! ?: ~4 F* z
+ y) J# G+ l5 L, W1 Q) K! d5 q0 r* q# l$ t! y1 G
|
|