본문 바로가기
개발/git,github,svn

[svn] CentOS 7 Subversion 설치 및 세팅

by 가시죠 2021. 1. 28.
반응형

Centos OS에서 Subversion을 설치하고 레파지토리 및 계정을 설정한다.

 

1. Subversion 설치

# 설치할 수 있는 subversion을 확인

yum list subversion

# subversion을 설치

yum install -y subversion

 

2. Subversion 저장소 폴더 생성

#경로 생성 (ex. /data2/repositories)

mkdir /data2/repositories

 

3. 생성한 저장소 폴더를 svnserve 설정파일에 경로 추가

vi /etc/sysconfig/svnserve

# OPTIONS is used to pass command-line arguments to svnserve.
#
# Specify the repository location in -r parameter:
#OPTIONS="-r /var/svn"

OPTIONS="--threads --root /data2/repositories"

 

4. Subversion 포트 방화벽 해제

sudo firewall-cmd --permanent --zone=public --add-port=3690/tcp
sudo firewall-cmd --reload

 

5. Subversion 실행

# 시작
systemctl start svnserve.service

# 정지
systemctl stop svnserve.service

#재시작
systemctl restart svnserve.service

 

6. 동작중인지 확인

ps -ef | grep svn

 

7. Subversion repository 생성 (또는 추가 시 )

# ex) 저장소명 : testsource

svnadmin create --fs-type fsfs testsource

 

*. --fs-type fsfs 옵션

   관리되는 파일들이 어떤 형식으로 저장,관리 되는지에 대한 옵션

   1.7.1 버전이상에서는 옵션을 붙이지 않아도 기본적으로 fsfs 타입으로 생성됨.

   결론 fsfs 타입을 사용해야 하며, 혹시 모르니 --fs-type fsfs 라고 명시적으로 붙여서 생성해줌.

 

8. 생성된 저장소 안의 내용 중 /conf/svnserve.conf 파일을 열어 환경 세팅 (접속계정 등) 수정

경로 : 저장소명/conf/svnserve.conf

### 생략
anon-access = none
auth-access = write
### 생략
password-db = passwd
### 생략
authz-db = authz
### 생략
realm = welcome to Repository
### 생략

(none : 접근 권한 없음, read : 읽기 권한, write : 쓰기 권한)

  • anon-access : 로그인 하지 않은 사용자(비인증 계정)에게 접근권한을 설정하는 부분. read, write, none 세가지 값을 설정 할 수 있다.

  • auth-access :  로그인한 사용자(인증 계정)에 대한 접근 권한을 설정하는 부분. read, write, none 세가지 값을 설정 할 수 있다.

  • passwd-db : 저장소에 접근할 사용자 계정과 비밀번호를 관리할 파일의 이름을 지정하는 설정이다. 기본 파일명은 passwd 이며, 다른 이름을 사용할 수 있다.

  • authz-db : 파일과 디렉토리에 대한 접근 권한을 관리하는 파일의 이름을 지정하는 설정이다. 기본 파일명은 authz 이며, 다른 이름을 사용할 수 있다.

  • realm :  인증할 때 보여주는 간단한 저장소 설명이며, 생략 가능하다.

9. authz 파일 안에 접속계정 등록 (경로 /conf/authz)

# 생략

[/]
userid     = rw
hong      = rw
hitomis    = rw

# 생략

 

10. passwd 파일 안에 접속계정의 비밀번호 등록

# 생략

[users]
userid     = password11
hong      = password11
hitomis   = password11

# 생략

 

11. Subversion 재시작

systemctl restart svnserve.service

 

12. trunk, tags, branches 기본 디렉토리 만들기

svn mkdir svn://127.0.0.1/저장소명/trunk

오류 발생 시 아래 내용으로 해결

# 홈 경로로 이동

cd ~

# 프로파일 편집기로 열기

vi .bash_profile

 

.bash_profile 파일 제일 아래에 내용추가

#Subversion
SVN_EDITOR=/usr/bin/vim
export SVN_EDITOR

# 프로파일 반영

source .bash_profile

 

13. vim 없다는 에러 발생 시

yum install vim-enhanced

vi /etc/profile

alias vi='vim'

source /etc/profile

 

14. 기본폴더 생성

svn mkdir svn://127.0.0.1/저장소명/trunk

에디트 모드가 나오며 ":wq" 입력 후 c 입력 (c - continue)

svn mkdir svn://127.0.0.1/저장소명/tags

에디트 모드가 나오며 ":wq" 입력 후 c 입력 (c - continue)

svn mkdir svn://127.0.0.1/저장소명/branches

에디트 모드가 나오며 ":wq" 입력 후 c 입력 (c - continue)

 

15. svn 정보 확인

svn list svn://127.0.0.1/저장소명

반응형

'개발 > git,github,svn' 카테고리의 다른 글

git bash 사용자 계정 변경  (0) 2022.01.09
5. eclipse에 github 연동하여 소스 올리기  (0) 2021.01.17
4. github 회원가입  (0) 2021.01.17
3. Git 기본 사용법 및 실습  (0) 2021.01.17
2. Git 설치 후 기본설정  (0) 2021.01.17

댓글