일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
- egov
- Jsp Pagination
- Java
- ORA-01005
- 문방구과자
- 정민이초밥
- mybatis
- Oracle
- 배딩작업
- ORA-00909
- 루키초밥
- 은혜침구
- 디카페인
- 나주
- 광주
- ORA-01745
- css
- RefreshableSqlSessionFactoryBean
- 맛집
- 카페
- Responsively app
- SVN사용방법
- AbstractViewe
- 반응형앱
- 요리
- JavaScript
- ORA-01756
- Eclipse
- docker
- 양동점
- Today
- Total
gnusraun
SVN 설치하기 및 사용방법 본문
SVN 설치 및 사용 방법에 대한 정의
** centOS7 기준
:: 설치 리스트 확인
$ yum list subversion
:: SVN 설치
$ yum install -y subversion
:: 설치 확인
$ svn --version 또는 rpm -qa | grep subversion
:: SVN 최상위 파일 경로 생성 및 실행
1) 원격저장소를 저장할 최상위 폴더 생성
$ cd /
$ mkdir svn_repos
2) SVN 원격서버 루트 경로 지정
$ vi /etc/sysconfig/svnserve
OPTIONS=”—threads —root /svn_repos”
3) SVN 서비스 포트 방화벽 해제 설정 (기본포트 3690)
$ sudo firewall-cmd —permanent —zone=public -add-port=3690/tcp
$ sudo firewall-cmd —reload
4) SVN 실행
$ systemctl start svnserve.service 실행
$ systemctl stop svnserve.service 중지
$ systemctl restart svnserve.service 재실행
5) SVN 서비스 실행 및 확인
$ netstat -anp | grep svnserve 서브버전의 서비스 포트를 확인
$ ps -ef | grep svn 서브버전의 프로세스 동작여부 확인
:: SVN 저장소 생성 (프로젝트 소스를 넣을 저장소)
1) /svn_repos 디렉토리 내에 저장소 만들기
$ cd /svn_repos
$ svnadmin create —fs-type fsfs 저장소명
// 저장소 생성시 warning이 발생 하지만 폴더는 생성 됨
svnadmin: warning: cannot set LC_CTYPE locale
svnadmin: warning: environment variable LC_CTYPE is UTF-8
svnadmin: warning: please check that your locale name is correct
// 해결 방안 해당 저장소 삭제 후 export 입력 후 저장소 재생성
export LC_ALL=C
:: SVN 설정
1) 기본 설정
$ vi /conf/svnserve.conf
** 사용하지 않을 경우 반드시 none으로 지정
** 주석으로만 처리할 경우 SVN E220001 : Itemis not readable 오류 발생
anon-access : 로그인 하지 않은 사용자(비인증 계정)에게 접근권한을 설정하는 부분. read, write, none 세가지 값을 설정 할 수 있다.
auth-access : 로그인한 사용자(인증 계정)에 대한 접근 권한을 설정하는 부분. read, write, none 세가지 값을 설정 할 수 있다.
passwd-db : 저장소에 접근할 사용자 계정과 비밀번호를 관리할 파일의 이름을 지정하는 설정이다. 기본 파일명은 passwd 이며, 다른 이름을 사용할 수 있다.
authz-db : 파일과 디렉토리에 대한 접근 권한을 관리하는 파일의 이름을 지정하는 설정이다. 기본 파일명은 authz 이며, 다른 이름을 사용할 수 있다.
realm : 인증할 때 보여주는 간단한 저장소 설명이며, 생략 가능하다.
none : 접근 권한 없음, read : 읽기 권한, write : 쓰기 권한
2) 저장소에 접근할 계정의 아이디 비밀번호 추가
$ vi /conf/passwd
[users]
아이디 = 비밀번호
3) 저장소에 접근할 계정의 권한 추가
$ vi /conf/authz
[/] authz(권한) 파일 저장소에 접근할 계정정보 추가
* = r #TestRepo1저장소의 루트경로에 모든 사용자가 read 할수 있는 권한을 부여
root = rw #TestRepo1저장소의 루트경로에 root 계정은 read, write 권한 부여
admin = rw #TestRepo1저장소의 루트경로에 admin 계정은 read, write 권한 부여
ex) 아래 코드 추가
[/]
user = rw
:: SVN 저장소 확인
$ svn list svn://ip 또는 도메인 주소/저장소명
$ svn info svn://ip 또는 도메인 주소/저장소명
* 허가거부일 경우 (보안상 막고있는 상태)
svn: E000013: Unable to connect to a repository at URL 'svn://127.0.0.1/xxx'
svn: E000013: Can't open file '/svn_repos/xxx/format': Permission denied$ chcon -R -t svnserve_content_t /svn_repos/xxx
해결방법: 보안모듈해제
$ chcon -R -t svnserve_content_t /svn_repos/xxx
:: SVN 저장소 접근을 위해 CentOS 7 같은 경우 SELinux를 disabled 처리
$ vi /etc/selinux/config 에서 disabled로 변경하기
SELinux status : enabled
SELinux status : disabled 로 변경
:: 서버재기동시 SVN 서비스 자동실행
$ systemctl enable svnserve.service
:: SVN 저장소 삭제
$ service svnserve stop
$ rm -rf /svn_repos/~