subversion 및 trac 설치가이드
이상하게 분류가 형상관리에 들어가 버린 이유는 subversion때문인가 보다..
1. Apache 2.0.xx 버전 설치 (2.0.59 버전 설치 했음)
아래 링크에서 아파치를 다운받아 설치 한다. httpd/binaries/win32/ 에서 받으면 된다. (apache_2.0.59-win32-x86-openssl-0.9.7j.msi)
http://www.apache.org/dyn/closer.cgi
2.0.xx 이상 버전(2.2.x)은 Window Subversion이 지원하지 못한다. 꼭 2.0.xx 버전대를 설치하도록 한다.
(자세한 사항은 링크를 참조한다. http://subversion.tigris.org/project_packages.html)
2007년 1월 25일 Apache 2.2.x 버전을 위한 Subversion 이 build됨. - 아직 테스트 해보지 못함.
버전 또는 다른 사유로 Apache를 재설치 시 3-2. mod_python과 2. Subversion을 재설치하여야 한다.
2. Subversion 최신버전 설치 (1.4.3 설치)
아래의 링크에서 Window용 Subversion을 다운받아 설치한다. (svn-1.4.3-setup)
http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91&expandFolder=91&folderID=8100
Apache가 설치된후에 설치를 해야 httpd.conf 에 Subversion의 올바른 경로가 설정된다.
3. Python 2.4 설치
아래 링크에서 Python을 다운받아 설치한다.(Python 2.4.4)
http://www.python.org/download/
Python 2.5 버전은 지원하지 모듈이 있으므로 가급적 2.4 버전을 설치한다.(6)
그래도 2.5 버전을 설치하고 싶다면 http://trac.edgewall.org/wiki/TracInstall 페이지를 참조한다.
3-1. svn-win32-1.4.3_py2.4.exe 을 다운받아 설치
아래의 링크에서 Subversion 1.4.3 Win32 Installer for the Python 2.4 bindings 을 다운받아 설치한다.
http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91&expandFolder=91&folderID=8100
3-2. mod-python-3.3.1-py2.4 다운받아 설치
Apache의 속도를 빠르게 하기 위해서 아래의 링크에서 mod_python을 다운받아 설치한다. (mod_python-3.3.1.win32-py2.4-Apache2.0.exe)
http://httpd.apache.org/modules/python-download.cgi
* Win32Binaries 라고 중간에 링크가 걸려있다.
* Apache를 재설치할경우 mod_python은 다시 설치해 주어야 한다.
3-3. Docutils 설치
아래의 링크에서 docutils-0.4.tgz 를 다운받아 압축을 푼다음 $ python ./setup.py install 와 같이 실행하여 설치한다.
http://docutils.sourceforge.net/
3-4. PySQLite 설치
아래의 링크에서 Python 버전(2.4)에 맞는 PySQLite를 다운받아 설치
http://initd.org/tracker/pysqlite/wiki/pysqlite
TRAC에서 MySQL을 지원하나 아직 테스트 단계이므로 PySQLite를 설치하도록 하자.
3-5. ClearSilver 설치
아래의 링크에서 Python 버전(2.4)에 맞는 ClearSilver를 다운받아 설치(clearsilver-0.9.14.win32-py2.4.exe) - Python2.5용 버전이 없다.
http://www.clearsilver.net/downloads/
4. TRAC 0.10.3.1 설치
아래의 링크에서 윈도우용 인스톨러 TRAC을 다운받아 설치
http://trac.edgewall.org/wiki/TracDownload
이곳까지 설치를 완료했다면 Apache와 TRAC 그리고 Subversion 이 연동되도록 최소한 설치작업을 모든 마쳤다.
테스트를 해보지는 않았지만 이 모두를 한꺼번에 설치하기위한 웹페이지가 있다.
각 설치파일들의 버전도 가장 최신버전으로 설정되어 있다.
아래의 링크를 참조한다.
http://yeoupooh.us.to:8080/wiki/display/pu/TracOnWindows
5. Subversion Repository 생성 및 TRAC의 DB생성
Subversion의 Repository를 생성하는 방법으로 2가지가 있다.
첫번째는 console을 사용하여 text로 생성하는 방법과 TortoiseSVN을 사용하여 생성하는 방법이 있다.
생성하는 방법은 아래의 참고자료의 링크들을 참고하여 생성하도록 한다.
TRAC의 DB는 Python환경에서 console에서 작성하여야 한다.
자세한 방법은 아래의 링크를 참조한다.
http://jongyeob.com/moniwiki/wiki.php/TracInstall
TRAC의 DB와 Subversion의 Repository를 구성한 예시)
d:\SVN --+- TEST
+- PROJECTA
+- PROJECTB
d:\TRAC --+- TEST
+- PROJECTA
+- PROJECTB
* 디랙토리 구조는 어디까지 예시이다. 그러나 어떻게 구성할것인가 미리 검토하고 작성하는것이 두번일 안하는 비결이다.
TRAC을 위해서는 Apache config 파일(httpd.conf)에 아래 내용들을 추가한다.
LoadModule python_module modules/mod_python.so
<Location /test>
SetHandler mod_python
PythonHandler trac.web.modpython_frontend
PythonOption TracEnv d:\trac\test
</Location>
http://localhost/test 로 접근해서 TRAC의 첫페이지가 나오면 성공이다.
Subversion의 Repository를 위해서는 아래의 내용을 추가한다.
<Location /svn/test>
DAV svn
SVNPath d:\svn\test
</Location>
http://localhost/svn/test 로 접근해서 Repository revision 화면이 나오면 성공이다.
6. login 설치 - 인증
* .htaccess 파일을 생성해서 특정한 폴더에 두고 TRAC의 login시와 Subversion의 login시 같이 사용하도록 하면 계정관리하기도 수월하다.
TRAC의 login을 위해서는 아래와 같은 내용을 httpd.conf에 추가한다.
<Location /test/login>
Authtype Basic
AuthName "TEST"
AuthUserFile d:\.htaccess
Require valid-user
</Location>
.htaccess 는 Apache의 htpasswd.exe를 실행하여 생성한다.
Subversion에 anonymous가 아닌 인증된 사람만 접근을 허용하려면 아래와 같은 내용을 추가한다.
<Location /svn/test>
DAV svn
SVNPath d:\svn\test
Authtype Basic
AuthName "TEST"
AuthUserFile d:\.htaccess
Require valid-user
</Location>
7. Plugin 설치
TRAC의 admin을 사용하여 관리하기 불편하다면 plugin을 설치하자.
http://trac-hacks.org/wiki
ez_setup.py 를 실행 설치후 python24/scripts/easy_install.exe 생성
easy_install.exe ~.egg 로 설치
trac.db/conf/trac.ini 파일에 [components] 에 webadmin.* = enabled 와 같이 추가하여 사용한다.
trac-hacks 에 있는 Plugin등을 다운받지 않고 svn 경로명(http://test.co.kr/test/trunk/0.10)을 easy_install.exe 경로명 으로도 설치 가능하다.
8. http이외의 보안을 위한 접속프로토콜
https로 접속을 위한 SSL 설치
8-1. ssl 설치
LoadModule ssl_module modules/mod_ssl.so 주석(#)을 해제한다.
Apache Service Monitor 를 열어서 아래에 보면 어떤 모듈이 지금 현재 동작중인지 나온다. 참고하자.
Apache/2.0.59(win32) mod_ssl/2.0.59 OpenSSL/0.9.7.j SVN/1.4.3. DAV/2
8-2 인증키 만들기
OpenSSL.exe 를 사용하여 인증서를 만든다.
openssl req -new -out filename.csr
openssl rsa -in privkey.pem -out filename.key
openssl req -new -x509 -days 365 -key filename.key -out filename.crt
생성된 filename.key와 crt 파일을 Apache의 conf 디렉토리에 복사해 넣는다.
8-3 httpd.conf 설정하기
아래의 내용을 추가한다.
Listen 443
<VirtualHost *:443>
SSLEngine on
SSLCertificateFile "C:\Program Files\Apache Group\Apache2\conf\filename.crt"
SSLCertificateKeyFile "C:\Program Files\Apache Group\Apache2\conf\filename.key"
SSLProtocol all
SSLCipherSuite HIGH:MEDIUM
<Location /svn>
DAV svn
SVNPath d:\svn\test
Authtype Basic
AuthName "TEST"
AuthUserFile d:\trac\.htaccess
Require valid-user
</Location>
</VirtualHost>
Svnserver로 접속을 위한 방법
설치는 아래의 링크를 참조한다.
http://serious-code.net/moin.cgi/SubversionSetup
이재홍님의 SVNmanager를 실행하여 운영한다.
주의할점은 Subversion 디렉토리와 Trac 디렉토리를 구분한다.
TortoiseSVN으로 접속시 Multi Project로 작업이 가능하다.
svn://test.co.kr/test
svn://test.co.kr/projecta
SVN+SSH
Cygwin을 설치
http://ist.uwaterloo.ca/~kscully/CygwinSSHD_W2K3.html
환경변수에 Path=c:\cygwin 와 cygwin=ntsec tty 를 추가
9. 한글화
KLDP의 트랙 한글화 웹페이지를 참조
http://kldp.net/projects/trac-ko/
아래의 링크에서 최신트랙을 다운받아 설치한다.
http://kldp.net/frs/?group_id=724
tarball (tar.gz등 압축된 파일)을 다운받아서 압축을 푼다음 $ python ./setup.py install 와 같이 설치한다.
윈도우용 TRAC이 설치되어 있는 경우 제대로 설치가 되지 않을수 있다. 프로그램 추가삭제에서 TRAC을 삭제후 재설치 해본다.
참고사이트
Subversion
윈도우에 Subversion 설치 - 이재홍님
http://www.pyrasis.com/main/SubversionServerForWindows
SVN manger Utility - 이재홍님
http://www.pyrasis.com/main/SVNSERVEManager
TRAC
Trac 설치 - 종엽님위키
http://jongyeob.com/moniwiki/wiki.php/TracInstall
윈도우XP에 TRAC, Subversion 및 Moniwiki 설치
http://aslongas.pe.kr/tt/index.php?pl=11
http://gaedol.org/resources/wiki/TracGuide
TRAC의 도움말 부분 번역 페이지
http://ai.uos.ac.kr/trac/ailab/wiki/TracInstall
윈도우에 TRAC 설치하기 - TRAC 영문
http://trac.edgewall.org/wiki/TracOnWindows
TRAC에서 Plugin 설치하기 - TRAC 영문
http://trac.edgewall.org/wiki/TracPlugins
WebAdmin Pluging
http://trac.edgewall.org/wiki/WebAdmin
TRAC의 Plugin 이 있는곳 - TRAC Hack 영문
http://trac-hacks.org/wiki
Windows에서 TRAC(StandAlone)과 서브버전 설치 - 영문
http://lazutkin.com/blog/2006/feb/18/setting-tools-windows/
Trac Apache Subversion AllinOne - 모두를 한꺼번에 설치하기
http://yeoupooh.us.to:8080/wiki/display/pu/TracOnWindows
TRAC에서 문서작성을 편하게 하기위한 WikiExporter - CRIZIN님
http://crizin.net/entry/TinyMCE-플러그인-WikiExporter
Subversion과 TRAC연동
Cygwin을 사용한 SVN+SSH 연동
http://hankiya.com/tt/jhk8211/330
Window 2003 server에서 Cygwin SSH daemon 설치 - 영문
http://ist.uwaterloo.ca/~kscully/CygwinSSHD_W2K3.html
SVN+SSH 연동
http://wiki.kldp.org/wiki.php/SubversionTips
http://kwon37xi.egloos.com/2521260
SSH Howto(영문)
http://www.logemann.org/day/archives/000099.html
서적
서브버전을 이용한 실용적인 버전관리
http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200603080013
보안을 위한 효율적인 방법 PKI
http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200309040006
기타
SSL이란?
http://www.junjaewoo.com/kldp/SSL-Certificates-HOWTO/x70.html
OpenSSL HOWTO 문서 - kldp
http://wiki.kldp.org/wiki.php/DocbookSgml/SSL-Certificates-HOWTO
http://wiki.kldp.org/wiki.php/LinuxdocSgml/ApacheSSL-KLDP
http://wiki.kldp.org/wiki.php/DocbookSgml/SSL-RedHat-HOWTO
tortoiseSVN 다운받기
http://tortoisesvn.net/downloads
tortoiseSVN Howto
http://wiki.kldp.org/wiki.php/TortoiseSVN-USE
TRAC 한글화 프로젝트 : http://kldp.net/projects/trac-ko/
TRAC 설치문서 : http://wiki.kldp.org/wiki.php/trac (*nux)
http://jangyeol.wikidot.com/tracinstall (Windows *)
TRAC 셋팅 : http://daybreaker.springnote.com/pages/39637
TRAC,SVN,SSL 함께 설치하기 : http://kldp.org/node/84957
svn 데이터 dump 및 load 방법( Repository 를 MyTest 로 가정)
1. 해당 Repository 가 생성된 상위 directory 로 이동 한다.
2. Repository 를 dump 한다.
command >> svnadmin dump MyTest > MyTest.20006.09.09.dump
-> 전체 dump
command >> svnadmin dump MyTest -r 10 > MyTest.20006.09.09.dump
-> 리비전 10 만 dump
command >> svnadmin dump MyTest -r 10:20 > MyTest.20006.09.09.dump
-> 리비전 10 부터 20 까지 만 dump
3. 새로운 Repository 를 생성 한다. (Repository 를 MyTestNew 로 가정)
command >> svnadmin create MyTestNew
4. dump 된 데이터를 load 한다. (Repository 를 MyTestNew 로 가정)
command >> svnadmin load MyTestNew < MyTest.20006.09.09.dump
-> 새로운 리비전 으로 load (리비전 번호는 1부터 생성)
command >> svnadmin load MyTestNew --force-uuid < MyTest.20006.09.09.dump
-> 기존 dump 했던 리비전 유지
# 기존 리비전을 유지 하면 좋은점.
1. 동일한 URL 일 경우 Client 에서는 별도의 작업이 필요 없이 기존에 사용
하던 그대로 사용 가능.
2. URL 이 바뀐 경우는 저장소 URL 변경을 수행후 기존에 사용 하던 그대로 사용 가능.
'Integrator > SCM' 카테고리의 다른 글
Trac - project management (0) | 2008.02.21 |
---|