管理员
论坛积分
分
威望 点
贡献值 个
金币 枚
|
一丶 SVN简介
4 A) u3 w4 @" V4 USVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。(ps:百度百科抄的 可忽略)! Q: s8 q% s' x
1.准备工作
* P2 M( K. v- `一台centos7 服务器 一台 客户端3 a/ l* y' t8 O4 h+ ^ I
————————————————
% `% }: M: Q/ O) K5 c1、验证是否安装了SVN
' l" b4 N; o) T& |9 T$ P% U) c w) n" w6 c* p
命令: # rpm -qa subversion
$ x. j2 O9 ^! D% e% Z# L" `/ r: f3 ^% P9 o& u
如果安装了,输出对应的版本:subversion-1.6.11-15.el6_7.x86_64
6 z* }1 m* U: [' w. u
/ y% R2 |- o* R- c; R( c8 ]8 G: D* O6 l# N否则,空白
( _' n, T) h8 m) [$ x1 O! H
- x8 z8 H4 _4 j, D8 Q2、安装SVN的命令
! ^% D5 @. E% {/ R/ y2 G1 I* m) R) R% O: {' R- q
# yum -y install subversion
% H( N- O) j# x% w1 G2 b; v* c$ a {! C% Y+ N+ [* Y" K9 t
接下来使用# svnadmin create /home/svn/blog //其中blog为你的站点目录 /home/svn/为目录) O2 ^2 ~. _: f4 {6 J- C# ]9 k
创建一个名为blog的svn版本库 ,进入blog目录 只要有以下目录就代表你的svn版本库搞好了
~- g- r- C @ }- l4 H; ~2 d) E. I5 s. D/ }
然后我们进入‘blog’下的 conf目录 对svn进行配置,conf 下共有三个文件 authz 是对用户权限的配置 passwd是用户和密码的设置0 O7 w& j Z4 E6 A- J- |$ c
p1 a2 P, g, C2 H8 o$ [# t q
svnserve.conf是对使用的配置包括是否开启匿名上传 ,用户上传等(差不多就是那个意思)
& J5 \: H+ |1 s6 S9 c9 ?. C2 y* h' x
2 T* @" ]+ N' v1 `5 Z
首先我们对svnserve.conf 进行配置 把箭头处的两行 前的#去除 同时要注意前面不能要留空格
4 E5 k+ K3 g u# G) n% n( j. b6 {8 ^
# password-db = passwd
$ ~7 Y2 ?/ ?: G3 l! _( ]4 Y; G$ w/ L& S5 h/ i% J
# authz-db = authz
) {' ]$ [" A2 G% I- E& V. R0 D% n/ n
3 D8 P8 K [; ]) ^然后编辑passwd 文件 写上自己要设置的账号和密码 注意前边不能有空格 并且不能有 #号 否则配置无效; X8 x/ \' s1 [) |0 i$ Q& D( p
9 R) I) n4 \, J1 L, P登录名=密码) d2 L* j/ E* d% a8 a
3 S2 C" g3 o( tuser=123456
8 _1 j, e( m" w/ \6 R8 T. y1 _' v
. d$ u' D! _' w: ?( _最后编辑authz文件给让配置的账号设置权限(其中[blog:/] 设置的用户对blog下的所有文件都有设置的权限 r代表可读权限 w代表可写权限)
! p+ o+ A3 R7 R1 g) ?5 ]( C: _& X- N$ f1 c
# * = r5 [9 }* @) t& L, _; `5 F5 W
S" j5 g1 s# Q3 w8 \: N) f! @& S
[/]! m6 a4 F U8 E( U4 l
2 U+ v8 v) Z/ w+ h2 E3 M9 S
root=rw
' l+ m, D2 ~: }- [
S3 h0 _, R0 j [这是用户的配置就完成了/ m2 _# P4 Y; B" l k1 q! I9 `' {4 m
: l0 ?- I2 j4 E1 w接下来我们就需要开启svn svnserve -d -r /home/svn/blog
3 g, Y, X2 B( `2 w" {. M9 o: r" @svnserve -d --listen-prot 端口 -r /data/svn/ssyleo
# {' r! m( f# B9 Y( ^8 J/ u4 G
使用此命令开启svn 根据自己设置的目录自行更改
* x( E3 [0 z/ D6 F( x2 w
$ c7 ^( _3 L) J0 G使用netstat -nltp 命令 可以看到 svn的默认端口为3690 如果你是用的是阿里云服务器的话 还需要在安全组添加该端口,否则也会造成 客户端上传代码失败具体操作我在这里就不多讲了4 W1 q3 h+ C$ q' Z5 p
8 h) u0 \3 h/ i4 z8 }+ X1 l2 G( r* b0 W- x n# ~9 D
win下载svn工具' F' g7 [5 ]6 ?: e* t0 F
8 ]" }. ]6 N+ Y! `0 z接下来我们就需要在客户端做测试 这里我用的是我自己的电脑 svn客户端的下载链接https://tortoisesvn.net/downloads.html 打开后根据自己电脑配置选择不同的安装包 (安装完记得重启电脑)这里安装步骤不就不说了 一直下一步就行了
! N% N" ^6 H8 ~) _+ z1 u8 m$ f& R9 u N/ m& p3 v Z- z
1 U6 A) X+ E. M7 s. H6 Z# t
重启完电脑后 右击鼠标 点击SVN checkout (svn捡出)下载代码
& H; ^0 i; J/ T O. r8 ?6 [$ n7 U输入你的svn地址 地址请根据自己的设置自行更改$ c- |: v# L/ X( A- \
1 a( W9 \7 x) }4 c
6 l7 X( _8 |$ C& D- T) l8 w+ _- q然后会弹出框让你输入你的账号和密码 输入后即可下载 服务器端的代码 你会发现文件夹里 只有一个.svn 如果没有的请将你的隐藏文件夹选项去掉这是你的svn 就搭建好了; N; f& K+ F: m0 U$ s3 w! J
7 o1 c7 c# i F0 O+ L8 B' V- _
. v8 c% q) y- s0 m(svn客户端简单使用 svn update 更新代码 svn commit 提交代码)
$ Y* j- z, F8 ~8 l; R3 M9 z& J3 \. i0 i6 o3 s9 A
- t3 x% I* O. f2 \8 J9 w: j
* _+ g& A& j5 r
可是这并不是我们想要的效果我们需要的是在web可以直接同步访问的所以我们要设置提交到svn的 代码能同步更新到web 根目录 svn 也是可以达到这种效果的 首先我们进入 web 根目录 这里我的跟目录在 /var/www/html/ 切换到 html目录下使用 svn co svn://192.168.1.35/blog 与网站根目录建立联系 同样的跟具体提示 输入自己设置的账号和密码并 输入yes设置保存
! ]1 g7 P& t1 `' K2 \4 ^, Q/ w7 J" }
这时我们保存在版本库的代码就会被同步到网站根目录 K+ t& I, q; _9 B) q* P
?4 B; _% K, ]2 C* X9 B4 v8 @. |" R7 u( d/ M8 X
3 ?! X) v) @. [2 o
5 s# N: W6 w) C; f) d) b
- w" c% H4 F* ~) t( g0 Z2 E2 O* H |
|