SVN 的安裝

一 SVN 的安裝

1 需求軟件(組件)的安裝:

 

tar zxvfapr-1.4.5.tar.gz -C ../software/

tar zxvfapr-util-1.3.12.tar.gz -C ../software/

cd ../software/

cd apr-1.4.5/

./configure--prefix=/usr/local/apr/ && make && make install

cd../apr-util-1.3.12/

./configure  --prefix=/usr/local/apr-util/--with-apr=/usr/local/apr/ && make && make install

 

tar zxvfsqlite-autoconf-3070900.tar.gz -C ../software/

cd../software/sqlite-autoconf-3070900/

./configure--prefix=/usr/local/sqlite && make && make install

 

tar zxvfneon-0.30.0.tar.gz

cd neon-0.30.0

./configure

make &&make install

 

tar –zvxfhttpd-2.2.25.tar.gz

cd httpd-2.2.25

./configure--prefix=/usr/local/apache --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config--enable-dav --enable-maintainer-mod --enable-rewrite --enable-so--with-sqlite=/usr/local/sqlite

make &&make install

 

2 SVN的編譯安裝

tar zxvfsubversion-1.7.2.tar.gz -C ../software/

cd../software/subversion-1.7.2/

./configure --prefix=/usr/local/subversion--with-apxs=/usr/local/apache/bin/apxs --with-apr=/usr/local/apr/--with-apr-util=/usr/local/apr-util/ --with-sqlite=/usr/local/sqlite--with-neon

make &&make install

 

3 驗證安裝

 

[root@localhostapache]# /usr/local/subversion/bin/svnversion --version

svnversion,version 1.7.2 (r1207936)

   compiled Sep 2 2014, 17:56:45

 

Copyright (C) 2011The Apache Software Foundation.

This softwareconsists of contributions made by many people; see the NOTICE

file for moreinformation.

Subversion is opensource software, see http://subversion.apache.org/

查看安裝後的版本信息。

svn的維護

Svn項目的創建

架設svn的根目錄爲/home/svn/project

Mkdir/home/svn/project

 

以創建項目 ym 爲例

 

a  mkdir/home/svn/project/ym

b  svnadmincreate /home/svn/project/ym

 

這樣就將svn項目ym創建好了,同時,會在/home/svn/project/ym生成

[root@localhost icann]# ll

總用量 24

drwxr-xr-x. 2 root root 4096 9   5 10:53 conf

drwxr-sr-x. 6 root root 4096 9   5 11:27 db

-r--r--r--. 1 root root    2 9   5 10:53 format

drwxr-xr-x. 2 root root 4096 9   5 10:53 hooks

drwxr-xr-x. 2 root root 4096 9   5 10:53 locks

-rw-r--r--. 1 root root  229 9   5 10:53 README.txt

 

對應的文件夾。

 

db:存放具體數據;

 

hooks:鉤子程序存放地,比如我們要實現同步更新的操作,在這裏實現;

 

conf:配置文件存放地

 

權限的配置

權限的配置文件在文件夾conf下,該文件夾下有三個文件

-rw-r--r--. 1 root root 1120 8  30 18:06 authz      (詳細權限配置文件authz

-rw-r--r--. 1 root root  342 9   5 12:01 passwd      (用戶密碼)

-rw-r--r--. 1 root root 2339 8  30 18:05 svnserve.conf  (匿名用戶的權限配置,配置使用哪種授權登錄方式)

1 編譯svnserver.conf

 

anon-access = none

auth-access = write

password-db = passwd

 

表示:對於匿名用戶,無訪問權限;對於授權用戶,有寫權限;

配置使用password授權登錄方式,就是用戶名和密碼都是明文存放在同級目錄下的passwd文件中

2 編輯passwd帳號密碼

 

[root@localhost conf]# cat passwd

### This file is an example password filefor svnserve.

### Its format is similar to that ofsvnserve.conf. As shown in the

### example below it contains one sectionlabelled [users].

### The name and password for each userfollow, one account per line.

 

[users]

# harry = harryssecret

# sally = sallyssecret

ym = ym142536

nawang = nwkj!@#

 

ym 的密碼是ym142536

 

3 編譯authz

[root@localhost conf]# cat authz

 

[groups]

admin = lsb

[repos:/]

@admin = rw

* = r

用戶組admin有讀寫的權限,admin組有lsb用戶。

針對所有用戶有讀的權限。

 

SVN 的啓動

svnserve -d -r /home/svn/project

 

客戶端的操作

1、通過軟件客戶端,檢出的地址爲svn://192.168.1.7/nabla

spacer.gif

 

2linux檢出和提交的操作

1、首先先新建一個空白的文件夾,然後檢出

svn cosvn://192.168.1.123/production/wap.ym.cn/ /var/www/html/wap.ym.cn

輸入用戶名和密碼,檢出這個庫。

2、再數據移到這個文件夾下面去,然後添加文件版本號

svn status|grep ? |awk '{print $2}'|xargssvn add

3、提交到庫

svn commit -m "1"  (-)

針對目前內部svn服務的說明

目前我們內部的svn服務(數據)都遷移到192.168.1.7 上面。

192.168.1.7 上面,svn的根目錄是/home/svn/project

下面分位兩個大項目

development

production

development針對開發庫(之前192.168.1.2上面的svn數據)

production 針對線上庫(之前192.168.1.29 上面的svn數據)

production下面的項目的權限配置和帳號密碼在各自的項目的conf文件夾下的配置文件配置。要增加修改用戶的權限在各自的項目下修改

 

development由於帳號比較多,帳號密碼統一到一個文件進行管理。權限的配置還是在各自的項目下的conf下的auth配置。以北龍的項目爲例,

cd  /home/svn/project/development/knet/conf

svnserve.conf 的配置文件爲

 

anon-access = none

auth-access = write

password-db = /home/svn/project/development/passwd

authz-db = authz

 

密碼統一讀取/home/svn/project/development/passwd文件。

權限的控制讀取/home/svn/project/development/knet/conf/下的auth文件

[development/knet:/]

baowenjie=rw


 

[development/knet:/web]

chenchengdi=rw


 

也就是說,

針對development項目新創建的項目,用戶的增加在/home/svn/project/development/passwd文件增加,用戶的權限還是在新創建的項目下編輯配置。

針對production項目新創建的項目,用戶的增加和權限的配置都是在新創建的項目下編輯配置。

 

 

 

 

 

  


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章