Size: 3182
Comment: converted to 1.6 markup
|
Size: 3186
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
[CVS]대체를 위해 설계된 SourceCodeControlSystem | [[CVS]]대체를 위해 설계된 SourceCodeControlSystem |
Line 32: | Line 32: |
각 저장소별 svnserve.conf 설정파일이 존재하며, 이 파일내에 접근 사용자를 정할 수 있다. 또한 [Apache]에 dav-svn으로 설정하여, 쓰는 방법이 있고, 이 경우에는 아파치설정에 의하며, 80포트를 그대로 이용한다는 장점이 있다. | 각 저장소별 svnserve.conf 설정파일이 존재하며, 이 파일내에 접근 사용자를 정할 수 있다. 또한 [[Apache]]에 dav-svn으로 설정하여, 쓰는 방법이 있고, 이 경우에는 아파치설정에 의하며, 80포트를 그대로 이용한다는 장점이 있다. |
CVS대체를 위해 설계된 SourceCodeControlSystem
관련정보
관리자측 사용법
서버측 저장소 만들기. (저장소는 프로젝트마다 하나씩)
# mkdir /home/svn # cd /home/svn/ # svnadmin create sample # chmod -R g+w sample
subversion 1.2 부터 fsfs 를 기본으로 합니다. bdb 에 문제가 많아서, fsfs 를 권장하는 분위기더라고요. --neosphere
neosphere님 이야기처럼 bdb 문제가 있다. 가끔씩 디비가 깨지는 경우가 생긴다. 이 경우, 복구하는 방법은
# svnadmin recover REPOSITORY_PATH
서버프로그램실행 (기본 3690포트)
# svnserve -d -r /home/svn/
각 저장소별 svnserve.conf 설정파일이 존재하며, 이 파일내에 접근 사용자를 정할 수 있다. 또한 Apache에 dav-svn으로 설정하여, 쓰는 방법이 있고, 이 경우에는 아파치설정에 의하며, 80포트를 그대로 이용한다는 장점이 있다.
사용자측 사용법
Properity
SVN Properity 참고.
Keyword substitution 사용법.
$ svn propset svn:keywords "Id Rev" *.py
이렇게 하면, 소스코드내에 $Id$, $Rev$ 부분이 해당 버젼의 내용으로 치환된다.
Subversion에서는 원하지 않는 파일을 무시(ignore)하려면, cvs처럼 파일에 기록하는것이 아니라, property를 설정해 주어야 한다. 그 프로퍼티가 svn:ignore 이다. 일단 .cvsignore 처럼 무시할리스트를 만들어 준다. 그리고, 만일 그 파일이 .ignore라고 한다면,
$ svn propset svn:ignore -F .ignore .
이렇게 해준다. 그러면 svn이 무시하고, svn status에서도 ?를 보이며 나타나지 않는다. 다만 나중에 다른 파일을 또 무시하려 할때 전에 있던것도 다시 무시를 해주어야 한다. 즉, property가 누적되지 않는다는거.. 그래서 무시할 파일이 있어야 할 듯...
$ svn pe svn:ignore . *.pyc
svn propedit svn:ignore . #Set up an ignores file in this directory svn -R propset svn:ignore -F svnignores.txt . #Copy the svnignores.txt file into the svn:ignores information for this directory and all contained directories recursively
External link
외부에서 관리되고 있는 Project 를 현재 svn 이 관리하고 있는 디렉토리 밑에 넣고 싶을 때는 다음과 같이 External link를 추가해줄 수 있다.
$ svn propedit svn:externals .
그런후에
[디렉토리명] [svn project 주소]
를 하면 svn update 를 했을 때 자동으로 그 주소를 체크해서 받아오게 된다.