중간 트랜잭션 http://www.aliyun.com/zixun/aggregation/6858.html "> seo 진단 Taobao 게스트 클라우드 호스트 기술 홀
SVN을 설치 하 고 WDCP 한 번 클릭 설치 패키지 기준 Nginx 웹 동기화 업데이트 구현
I. 설치
1. CVS는 설치 확인
Rpm-qa | grep 파괴
2입니다. 설치
냠 설치 파괴
3. 테스트 설치 성공
/usr/bin/svnserve-버전
다음과 같은 메시지가 설치
--------------------------------------
Svnserve, 버전 1.6.11 (r934486)
4 월 11 일 2013 년 17에서에서 컴파일: 28:04
Copyright (C) 2000-2009 collabnet입니다.
Subversion은 오픈 소스 소프트웨어는 http://subversion.tigris.org/site를 참조 하십시오.
이 제품은 CollabNet (http://www.Collab.Net/)에 의해 개발 된 소프트웨어 포함.
라이브러리 백엔드 (FS) 모듈의 다음 버전을 사용할 수 있습니다:
* Fs_base: 모듈만 BDB 버전 라이브러리를 작동할 수 있습니다.
* FS_FS: 모듈 텍스트 파일 (FSFS) 버전 라이브러리와 함께 작동합니다.
사이러스 SASL 인증 제공 됩니다.
--------------------------------------------------------------
Ii입니다. 구성
1, 새 디렉터리를 만듭니다: Repos svn 모든 파일을 저장 하는 데 사용할 수 있습니다
Mkdir-p/선택/svndata/repos
Note (프로젝트 이름) 경로 여기에 디렉터리는 다음과 같은 형식으로 변경할 수 있습니다.
Mkdir-p 디렉터리 경로 (예: Mkdir-p/www/svn/프로젝트)
2, 창 고 (일치 하도록 새 디렉터리 Svnadmin 만들기 디렉터리 창 고 경로 사용)의 새 버전을 만듭니다.
Svnadmin 만들기/선택/svndata/repos
3, SVN 버전의 라이브러리 프로필 수정
Vi/opt/svndata/repos/conf/svnserve.conf
영역 값이이 경우 repos에서 프로젝트 이름을 다음과 같은 형식에서으로.
[일반]
Anon-액세스 = 없음
인증 액세스 = 쓰기
비밀 번호 db = / 선택/svndata/프로젝트/conf/passwd
Authz db = / 선택/svndata/프로젝트/conf/authz
영역 Repos =
참고: 사용자 프로필 변경 즉시 적용 하 고 SVN을 재 부 팅 하지 않아도.
4, 사용자 추가
vi/선택/svndata/repos/conf/passwd
추가 SVN 사용자가 매우 간단 하 고, 추가 "사용자 이름 암호 =" 항목은 / 선택/svn/프로젝트/conf/passwd 파일을.
테스트 하려면, 다음 추가:
[사용자]
# 해리 Harryssecret =
# 샐리 Sallyssecret =
오후 PM_PW =
Server_group = SERVER_PW
Client_group = CLIENT_PW
Test_group = TEST_PW
5. 사용자 액세스 정책 수정
Vi/선택/svndata/repos/conf/authz
사용자의 액세스 정책을 기록 하려면 다음은 참조입니다.
[그룹]
project_p = 오후
project_s = Server_group
Project_c = Client_group
project_t = Test_group
[프로젝트: /]
@project_p = RW
* =
[프로젝트: / 서버]
@project_p = RW
@project_s = RW
* =
[프로젝트: / 클라이언트]
@project_p = RW
@project_c = RW
* =
[프로젝트: / 문서]
@project_p = RW
@project_s = RW
@project_c = RW
@project_t = RW
* =
위의 정보만 오후 읽기 및 Server_group 서버 디렉터리에 액세스할 수 있습니다, Client_group 클라이언트 디렉터리에 액세스할 수, 모든 문서 디렉터리에 액세스할 수 루트 디렉터리 쓰기 권한을 나타냅니다.
물론, 위의 더 복잡 한 사용 권한 제어, 경우에 테스트를 간단 하 게 될 수 있습니다. 다음과 같이 사용자 그룹에 모든 사용자를 넣어 사용자 그룹을 설정 합니다.
[그룹]
관리자 오후, server_group, client_group, test_group =
[/]
@admin = RW
권리의 통제에이 기사 세부 사항을 설명 하지 않습니다, 그리고 우리 상담 Niang에 갈 수 있다.
5. SVN 서비스 시작
svnserve-d 조-수신 대기 포트 3690-r/선택/svndata/repos (Root로 실행)
하나 이상의 프로젝트에서 동시에 개발 되 고, 하는 경우 다른 포트를 통해 여러 SVN 서비스 열고 TORTOISESVN 작업을 사용할 때 포트 번호를 추가 해야 수 있습니다.
6. 테스트 SVN 서버
사이트 루트 디렉터리로 이동
Cd/www/웹/repos/public_html
SVN co svn://127.0.0.1:3690/www/웹/repos/public_html-사용자 이름 오후-암호 PM_PW
다음과 같은 인증 프롬프트 표시
-----------------------------------------------------------------------
주의! 암호, 인증 도메인에 대 한:
Repos
만에 저장할 수 있습니다 일반 텍스트로 디스크! 만약에 가능 하다 면, 파괴를 허용 하 여 시스템 구성을 고려합니다
암호화 된 암호를 저장할 수 있습니다. 대 한 자세한 내용은 설명서를 참조 하십시오.
옵션 설정할 수 있습니다 있는 "-일반-암호 저장"을 "예" 또는 "아니오" "/ root/.subversion/servers".
에 다시 나타나는이 경고를 방지 합니다.
-----------------------------------------------------------------------
암호화 되지 않은 암호를 저장 (예/아니요)?
버전 창 고 어떤 파일을 추가 하지는 때문에 "예" 캐리지를 입력, 그래서 버전 0, 다음과 같이:
버전 0을 제거 합니다.
셋째, 후 커밋 구성, 자동 동기화 웹 디렉토리에 svn 버전 라이브러리 파일 구현
수정 된 코드 SVN 서버에 전송 된 후 직접 동기화 웹 서버 수 있도록 SVN 후크 후크 디렉터리를 입력 구성 해야
Cd/선택/svndata/repos/후크
ls
템플릿 파일 복사본 이라는 후 커밋,이 디렉터리에 복사 하 www 사용자 그룹을 설정 하 고 실행 설정 게시물-commit.tmpl 파일은 볼 수 있습니다.
CP 게시물-commit.tmpl 후 커밋
Chown www:www 후 커밋
chmod + x 후 커밋
이 WWW 디렉터리에 액세스할 수 있습니다.
원래 코드는입니다 모든 주석 아웃. 커밋 완료 될 때마다 호출 되는 셸 명령을 실행할 수 있습니다.
파일의 내용은 다음을 참조:
6 후 커밋
#! / 빈/sh
랭 수출 ZH_CN =. U T F-8
Repos = "$"
레 브 = "$"
Svn_path = / usr/빈/svn
Web_path = / 웹/웹/repos/public_html
Log_path=/tmp/svn_update.log
#/ usr/빈/svn 업데이트-사용자 이름-암호 암호 $WEB _path-아니-정식-캐시
에코 "nnn # #开始提交" "날짜" + %y-%m-%d% h: % 남: %s "' # # # ' >> $LOG _path
'WhoAmI', $REPOS, $REV 에코 >> $LOG _path
$SVN _path 업데이트-사용자 이름-암호 암호 $WEB _path-아니-정식-캐시 >> $LOG _path
Chown-r www:www $WEB _path
설명:
1, #! / 빈/sh 설명 셸 명령을 실행 하는 / * 설정된 환경 변수 설정된 5 월 업데이트 오류를 표시 하지 않을 경우
2, 수출 랭 ZH_CN =. U t F-8 해결 SVN 게시물 커밋 중국어 깨진 것입니다.
만약 당신이 GBK 인코딩 메시지가 표시 됩니다: 오류 출력 수 u t F-8을 기본 로케일에서 번역 하지
이것은 클라이언트-서버 인코딩 문제, 기본 u t f-8으로 설정 하려고 할 수 있습니다 수출 랭 ZH_CN =. GBK 또는 Lang = en_us. U T F-8
#执行更新操作
3, SVN 업데이트-사용자 버전의 라이브러리의 사용자 이름-암호 사용자 이름 암호 svn://Your IP 주소: 포트/웹/웹/repos/public_html
4. Chown-r www:www $WEB _path에 맞게 웹 서버 폴더 소유자 변경
원래 코드는입니다 모든 주석 아웃. 커밋 완료 될 때마다 호출 되는 셸 명령을 실행할 수 있습니다.
이 글은 Wdlinux 포럼에서 발췌, 지정 재현 ~