[리눅스] SVN 기초

2023. 4. 5. 23:28리눅스 실제 사용 팁

작성일 : 2006. 11. 7. 01:14


특정 파티션을 마운트해서 작업하며, 큰 변화가 있을 ㅤㄸㅒㅤ 시디백업을 습관적으로 하지만
실수로 하드디스크에서 원본을 날려버릴까봐 두려워했던 적이 있다.
그래서 SVN을 쓰기로 했다. 원본은 그대로 두고 원본과 내용물이 같은 복사본을 홈디렉토리에
복사한 다음 SVN 보관창고에 import하는 것이다.

설치 필수 패키지 : subversion.
보조 패키지 : rapidsvn -- GTK버전.

코딩작업이라면 굳이 GUI툴을 설치하지 않아도 되겠지만, 어차피 그놈환경에서 이미지 단위로
작업하기 때문에 GUI툴의 유용성을 맛보고 싶다. 그래서 rapidsvn을 설치한다.

== subversion 설정 ==
전역설정은 그대로 둔다.
그리고 svnadmin으로 로컬 영역에 데이터를 보관할 디렉토리 틀을 만든다 :

(내 PaperArt 자료를 보관할 저장공간이다)
~$ svnadmin create ~/SVN/PA

그러면 아래와 같은 디렉토리 및 파일이 생긴다.
README.txt  conf/  dav/  db/  format  hooks/  locks/

conf/ 아래의 passwd, svnserve.conf를 편집한다.
~$ cat passwd

[users]
pa = pa (id, passwd가 모두 pa다)

~$ cat svnserve.conf

[general]
anon-access = none (익명 사용자가 접근하는 것을 차단한다)
auth-access = write (write, read, none 중 택일. write면 read도 가능. 인증유저의 권한)

== 서버 띄우기 ==
아직 rc에 자동등록하도록 설정되지 않았으며, 상당히 가벼운 명령이기 때문에
내 그놈 환경이 실행될 때 한 번만 실행되게 해준다. 어차피 동일한 저장소를
점유한 프로세스가 떠있으면 더 이상의 실행시도도 그대로 반사된다.

(내가 좋아하는 방식이다. 패키지화 안된 프로그램은 주로 local/bin에 넣어둔다)
/usr/local/bin$ cat svnserve-pa

#! /bin/sh
SVNSERVE=/usr/bin/svnserve
ROOT=/home/(삐리리)/SVN/PA
svnserve -d -r $ROOT (이 줄이 핵심!)

exit 0

== 원본 데이터 가져오기 ==
이제 서버도 실행했으니 데이터를 집어넣는 일만 남았다.


--
내가 앓기 시작한 시기가 갑자기 다이어그램을 그리겠다고 3박 4일 휴가를 헌납했던
지난 여름부터였다. 너무도 오랫동안 pc앞에 앉아서 마우스와 모니터만으로 시간을 보냈으니
양팔이 무거워지고 척추가 뻐근해지는 증상을 겪게 된 것은 당연한 일이다.
지금은 시간만 나면 다이어그램을 완성하려고 애를 쓰는 형편이니 더 그런 것이고.
지난 주에는 우측 흉부 밑이 마비되는 끔찍한 증상도 앓았다. 약으로 쾌유되었지만...