管理员
论坛积分
分
威望 点
贡献值 个
金币 枚
|
一丶 SVN简介
Z: f. ~8 {- H9 Y }) i5 B/ E4 ~SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。(ps:百度百科抄的 可忽略)8 u2 G) C$ t7 W. p
1.准备工作
* d( h3 D n% r一台centos7 服务器 一台 客户端5 D8 ], {. O' P5 v: s
————————————————
& e' @$ v% o5 Q/ e7 N" P& k1、验证是否安装了SVN
% J8 B4 M2 s* u* ~2 c' S
, W7 O& y# D5 w命令: # rpm -qa subversion
# Y' r1 P1 U7 s& G
0 H$ W! F9 i2 a1 o7 T如果安装了,输出对应的版本:subversion-1.6.11-15.el6_7.x86_641 F. \0 z4 S- \1 T( `0 n* B
, n% v" x$ Y6 O) B' Q2 I D否则,空白
( ]2 R2 ^: e/ H
+ K, g# n9 z- e2、安装SVN的命令
& B; i6 c5 B& Z3 F! @( _9 u- q" ^ p7 k
# yum -y install subversion9 |. m2 D* y0 t
{! ^7 O8 @3 D6 B/ u Z; Q
接下来使用# svnadmin create /home/svn/blog //其中blog为你的站点目录 /home/svn/为目录$ }' u) n9 G+ _
创建一个名为blog的svn版本库 ,进入blog目录 只要有以下目录就代表你的svn版本库搞好了+ k# ~ ^& P% }6 J" C: f
. _0 \/ `4 c! V5 Y6 ]然后我们进入‘blog’下的 conf目录 对svn进行配置,conf 下共有三个文件 authz 是对用户权限的配置 passwd是用户和密码的设置 H: l3 Y4 f$ J% V9 Y8 x3 ?- f* [7 y
f; ]4 w- T3 q/ O
svnserve.conf是对使用的配置包括是否开启匿名上传 ,用户上传等(差不多就是那个意思)
/ i6 H5 E2 C' @4 I
0 G. k$ M' p% F- l, N1 s& }
- l. D6 ^: R* ~; n g; u! `首先我们对svnserve.conf 进行配置 把箭头处的两行 前的#去除 同时要注意前面不能要留空格
1 ], a5 l: B! H- K+ A X& k' x* o2 Y) e- R2 M" o
# password-db = passwd
1 H! n1 p4 S* E, e* _( j) ?- S& e, @* U- c! Y/ ?
# authz-db = authz
* k P2 a+ h: }$ H, s& u
8 n& R5 L& g/ r, N# X- V: r8 `$ A# `& Y9 ^$ o" i
然后编辑passwd 文件 写上自己要设置的账号和密码 注意前边不能有空格 并且不能有 #号 否则配置无效
+ ?4 K/ Q% `/ h- S7 e1 u2 T8 ]: X6 F: b- e g, a& e
登录名=密码
+ i+ _7 H" u+ T0 A. v v
9 c1 e; m5 L H# Y, puser=1234561 V0 F1 m3 n: h( o3 }! t
8 q& S/ \: V: y8 ^$ ^% Q
( [% K1 R/ w# W/ {* w& f最后编辑authz文件给让配置的账号设置权限(其中[blog:/] 设置的用户对blog下的所有文件都有设置的权限 r代表可读权限 w代表可写权限)5 r% p/ ~7 U0 Q- w) G
# g) Y/ P9 |# h: H# * = r& T% P Q4 A0 |: |0 Q
- t8 p) x5 Q; [0 _$ Q
[/]
$ b8 d, B2 y7 f$ }% Y2 Y
: i0 j! N! y9 Iroot=rw; Q, h. ^# G+ _5 w
6 Y" V9 M* g8 U# k/ X; @这是用户的配置就完成了( U% M. n H" M2 A
, A- T6 d. T$ W. ` f1 U) P; q
接下来我们就需要开启svn svnserve -d -r /home/svn/blog * P& J$ P" n3 m q' Y) ]5 e, O
svnserve -d --listen-prot 端口 -r /data/svn/ssyleo
, x+ P, n! g0 k/ W0 v6 z$ V( i7 l: u, f6 Q, p
使用此命令开启svn 根据自己设置的目录自行更改
) S8 R% _$ o* e; \
# x& g3 ?: A/ M1 c7 u8 m6 O使用netstat -nltp 命令 可以看到 svn的默认端口为3690 如果你是用的是阿里云服务器的话 还需要在安全组添加该端口,否则也会造成 客户端上传代码失败具体操作我在这里就不多讲了
: X# b: g( R% n, B8 m9 k
9 e. v8 H7 L4 O& G9 S; x3 z
/ B& a* P; E9 Dwin下载svn工具1 t2 h6 ^/ i1 Y& _/ F
: N a! o, b4 u/ O
接下来我们就需要在客户端做测试 这里我用的是我自己的电脑 svn客户端的下载链接https://tortoisesvn.net/downloads.html 打开后根据自己电脑配置选择不同的安装包 (安装完记得重启电脑)这里安装步骤不就不说了 一直下一步就行了3 g \# |( F' b3 g: t$ w
4 d0 c$ L4 h# q! o1 \! Y# }$ B
8 K( C" h8 {$ r. b. v, k重启完电脑后 右击鼠标 点击SVN checkout (svn捡出)下载代码* d% V4 j5 G+ y. |/ a
输入你的svn地址 地址请根据自己的设置自行更改; E9 n( d8 K. J( G4 x3 Q: I2 H
/ C n5 @+ j' T( I0 [) I/ g1 [5 U# L1 h
然后会弹出框让你输入你的账号和密码 输入后即可下载 服务器端的代码 你会发现文件夹里 只有一个.svn 如果没有的请将你的隐藏文件夹选项去掉这是你的svn 就搭建好了% m7 S" p2 M5 {0 ~; \! k) E
3 K7 V- `; f, m6 P6 v* I, b) c! A- W" v7 Z- c( q" \% I# H8 F
(svn客户端简单使用 svn update 更新代码 svn commit 提交代码)
' M, A$ o% L5 ?- @2 W( u8 [: \) m* `
5 @$ V8 W# |( g. T
8 p9 v2 O. S. B# ]# G/ N
可是这并不是我们想要的效果我们需要的是在web可以直接同步访问的所以我们要设置提交到svn的 代码能同步更新到web 根目录 svn 也是可以达到这种效果的 首先我们进入 web 根目录 这里我的跟目录在 /var/www/html/ 切换到 html目录下使用 svn co svn://192.168.1.35/blog 与网站根目录建立联系 同样的跟具体提示 输入自己设置的账号和密码并 输入yes设置保存
0 K6 k: q& `$ w/ u, F8 F9 ^1 K0 B" F: _* R7 u9 {2 [& c0 u
这时我们保存在版本库的代码就会被同步到网站根目录
+ n; S/ u x1 i7 t
+ j6 I% Y2 |! U$ p$ o6 |& q; [2 I$ d
9 o6 Z2 _9 ~" V9 P' }3 V) D$ n5 Y
* r. f- F1 f' }1 [3 @ j& l, V5 T2 d$ q5 H8 Q) ]
|
|