독립형 서버 또는 svnserve 및 아파치를 WebDAV를 /의 DeltaV 프로토콜 통신에 아파치 모듈의 수단으로 : SVN 서버 두 가지 작동 모드가 있습니다. BDB와 FSFS : 데이터의 SVN 버전은 두 가지 방법으로 저장됩니다. BDB 서버가 중단되는 방법은 데이터를 잠글 수 있습니다. FSFS 방법으로 안전하고 더 나은 호환성.
A. 전복 설치
# wget http://subversion.tigris.org/downloads/subversion-1.6.13.tar.gz
# wget http://subversion.tigris.org/downloads/subversion-deps-1.6.13.tar.gz
# tar -xzvf subversion-1.6.13.tar.gz -C ../software/
# tar -xzvf subversion-deps-1.6.13.tar.gz -C ../software/
# cd ../software/subversion-1.6.13/
# ./configure --prefix=/usr/local/subversion-1.6.13
# make clean
# make
# make install
# ./svnserve --version
svnserve, version 1.6.13 (r1002816)
compiled Jun 1 2011, 10:19:12
Copyright (C) 2000-2009 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).
The following repository back-end (FS) modules are available:
* fs_fs : Module for working with a plain file (FSFS) repository.
Cyrus SASL authentication is available.
위의 정보의 출력은 설치에 성공했습니다.
II. 라이브러리 파일의 설립
1. 폴더를 만듭니다
# mkdir -p /www/svn/repository
2. 저장소를 생성하고 저장 모드가 FSFS있는 데이터를 지정
# ./svnadmin create --fs-type fsfs /www/svn/repository/
# ls /www/svn/repository/
conf db format hooks locks README.txt
3. 임시 디렉토리 프로젝트를 만듭니다
# mkdir -p /www/svn/tmp/{trunk,tags,branches}
4. 트렁크 디렉토리 프로젝트에 파일을 복사
# cp -r nginx /www/svn/tmp/trunk/
저장소의 프로젝트 관리에 필요한 5. 가져 오기 저장소에
# ./svn import /www/svn/tmp/ file:///www/svn/repository/ -m "first import"
-m 标识操作的注释
/ww/svn/tmp/trunk/nginx 项目文件的位置
file:///www/svn/repository 创建的软件仓库
Adding /www/svn/tmp/trunk/nginx/client_body_temp
Adding /www/svn/tmp/trunk/nginx/uwsgi_temp
Adding /www/svn/tmp/trunk/nginx/logs
Adding /www/svn/tmp/trunk/nginx/logs/access.log
Adding /www/svn/tmp/trunk/nginx/logs/error.log
Adding /www/svn/tmp/trunk/nginx/html
Adding /www/svn/tmp/trunk/nginx/html/50x.html
Adding /www/svn/tmp/trunk/nginx/html/index.html
Adding /www/svn/tmp/trunk/nginx/fastcgi_temp
Adding /www/svn/tmp/trunk/nginx/conf
Adding /www/svn/tmp/trunk/nginx/conf/uwsgi_params
Adding /www/svn/tmp/trunk/nginx/conf/fastcgi_params
Adding /www/svn/tmp/trunk/nginx/conf/uwsgi_params.default
Adding /www/svn/tmp/trunk/nginx/conf/fastcgi.conf
Adding /www/svn/tmp/trunk/nginx/conf/fastcgi_params.default
Adding /www/svn/tmp/trunk/nginx/conf/fastcgi.conf.default
Adding /www/svn/tmp/trunk/nginx/conf/nginx.conf
Adding /www/svn/tmp/trunk/nginx/conf/scgi_params
Adding /www/svn/tmp/trunk/nginx/conf/win-utf
Adding /www/svn/tmp/trunk/nginx/conf/nginx.conf.default
Adding /www/svn/tmp/trunk/nginx/conf/mime.types
Adding /www/svn/tmp/trunk/nginx/conf/scgi_params.default
Adding /www/svn/tmp/trunk/nginx/conf/mime.types.default
Adding /www/svn/tmp/trunk/nginx/conf/koi-win
Adding /www/svn/tmp/trunk/nginx/conf/koi-utf
Adding /www/svn/tmp/trunk/nginx/proxy_temp
Adding /www/svn/tmp/trunk/nginx/scgi_temp
Adding /www/svn/tmp/trunk/nginx/sbin
Adding (bin) /www/svn/tmp/trunk/nginx/sbin/nginx
Committed revision 1.
6. 가져 오기가 성공 여부
# ./svn list --verbose file:///www/svn/repository/
1 root Jun 01 10:48 ./
1 root Jun 01 10:48 client_body_temp/
1 root Jun 01 10:48 conf/
1 root Jun 01 10:48 fastcgi_temp/
1 root Jun 01 10:48 html/
1 root Jun 01 10:48 logs/
1 root Jun 01 10:48 proxy_temp/
1 root Jun 01 10:48 sbin/
1 root Jun 01 10:48 scgi_temp/
1 root Jun 01 10:48 uwsgi_temp/
7. 저장소 파일 권한을 수정
# chmod 770 repository
# chmod -R g+w repository
III. 사용자 관리
1. 저장소 구성 파일을 수정
# vim /www/svn/repository/conf/svnserve.conf
[general]
anon-access = read
auth-access = write
password-db = passwd
authz-db = authz
realm = repository
[sasl]
2. 수정은 사용자가 저장소 파일에 액세스 할 수 있도록
# vim /www/svn/repository/conf/passwd
다음과 같이 파일 형식은 다음과 같습니다
[users] //不可省略
username1=password1
username2=password2 //每个用户一行
새 사용자 목록
xuhh = [email protected]
3. 저장소에 대한 사용자 액세스를 수정
# vim /www/svn/repository/conf/authz
참고 : 프로필 외관은 passwd 파일에 정의되어 있어야합니다 아이디 권리, 권한 프로파일에는 AuthZ 변경 사항은 즉시 적용됩니다. 다음과 같이 파일 형식은 다음과 같습니다 사용자 그룹 형식 :
[groups]
user_group_name=username1,username2 //用户间以逗号分割
저장소 디렉토리 형식 :
[repository:/project/directory] //版本库:/项目/目录
@user_group_name=permissions //用户组名=权限
username=permissions //用户名=权限
[] 여러 정의 / 저장소의 권한 설정의 모든 프리젠 테이션, repos1을 가질 수 있습니다, repos2 프로젝트 설정 권한 repos2 표현 / www가 www가 : /www/example.com는 말 /이 repos2 repos1 설정 권한을 말했다 example.com 디렉토리 권한 설정은 WWW 프로젝트를 repos2. * 모든 사용자를 나타내는 데 사용할 수 있습니다. 권한은 W, R, WR 빈, 빈 수단 권리로 설정할 수 있습니다. 저장소에 액세스 할 수있는 새로운 사용자 권한
[aliases]
[groups]
developer = xuhh
[/]
@developer = rw
IV. 시작 및 전복 1. 시작 SVN을 중지
# ./svnserve -d --listen-port 9999 -r /www/svn/repository --log-file /usr/local/subversion-1.6.13/logs/svn.log --pid-file /usr/local/subversion-1.6.13/logs/svn.pid
포트 번호를 지정한 디렉토리 -r --log-파일 듣기 데몬 모드 --listen 포트에 -d 실행 로그 파일 --pid 파일 지정된 PID 파일 2. 정지 SVN을 지정합니다
# kill -9 `cat /usr/local/subversion-1.6.13/logs/svn.pid`
V. 다음 클라이언트 액세스 1.Windows에 설치 TortoiseSVN을 2.Linux
# svn checkout svn://192.168.50.10:9999
HTTP : //www.ttlsa.com/html/711.html 소스를 표시하시기 바랍니다
HTTPS : //my.oschina.net/766/blog/211394 재현