트랙+서브버젼 설치 (trac+svn) [소프트웨어형상관리,트랙,서브버젼,trac,svn,SCM]

이미지출처 : www.wiggy.net

Trac+SVN 설치 방법








——————————————————-

# 파이썬으로 인스톨 하기

——————————————————-

setup.py 파일이 들어있는 배포판의 인스톨 방법



python ./setup.py install



——————————————————-

# [swig] 설치(Simplified Wrapper and Interface Generator)

——————————————————-

./configure –with-python=/usr/bin/python

make

sudo make install



——————————————————-

# [Subversion] 설치(SCM)

——————————————————-

./configure -prefix=/usr/local –without-berkeley-db –enable-swig-bindings=python \

–with-swig=/usr/local/bin/swig PYTHON2=/System/Library/Frameworks/Python.framework/Versions/2.3/ \

–mandir=/usr/local/share/man –with-ssl –with-apxs=/usr/local/apache2/bin/apxs –with-zlib \

–with-apr=/usr/local/apache2 –with-apr-util=/usr/local/apache2

make

sudo make install



——————————————————-

# swig svn python bindings

——————————————————-

swig를 이용하여 svn을 연동

cd <subversion-distribution-top-dir>

make swig-py

sudo make install-swig-py

echo /usr/local/lib/svn-python > /Library/Python/2.3/site-packages/svn-python.pth



——————————————————-

# [Clearsilver]

——————————————————-

소스코드를 색으로 강조해준다.(highlight 기능)

cd <clearsilver-distribution-top-dir>

./configure –prefix=/usr/local –with-python=/usr/bin/python –disable-ruby

make

# >>> here modify first line of scripts/document.py to use same python (#!/usr/bin/ python)

sudo make install



——————————————————-

# [Docutils]

——————————————————-

문서를 원하는 형식으로 변환

cd < docutils-distribution-top-dir>

sudo python setup.py install



——————————————————-

# [postgres db] 설치

——————————————————-

./configure

gmake

su

gmake install

adduser postgres

mkdir /usr/local/pgsql/data

chown postgres /usr/local/pgsql/data

su - postgres

/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data

/usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data >logfile 2>&1 &

/usr/local/pgsql/bin/createdb -E=utf8 test

/usr/local/pgsql/bin/psql test



——————————————————-

# postgres 기본적인 명령어들

——————————————————-

c dbname : dbname 에 연결

\d : show databases

show server_encoding :

show client_encoding

set client_encoding = ‘uhc’;



——————————————————-

# trac 새로운 환경 만들기

——————————————————-

trac-admin /path/to/projectenv initenv



# 환경설정중에 DB에 postgres 사용하기

Database Connection Strings

postgres://user:pass@server/database?schema=yourschemaname



——————————————————-

# [pyPgSQL] 설치

——————————————————-

python에서 pgsql 이용하기 위해서 필요



——————————————————-

# [egenix-mx-base] 설치

——————————————————-

postgres의 DateTime을 사용하기 위해서 설치



——————————————————-

# trac 기본 익명 사용자 권한

——————————————————-

trac-admin PATH permission list - 권한 리스트 보기

trac-admin PATH permission add ID PERMISSION - 권한 추가(’*’ 사용가능)

trac-admin PATH permission remove ID PERMISSION - 권한 제거(’*’ 사용가능)



User Action

————————–

anonymous BROWSER_VIEW

anonymous CHANGESET_VIEW

anonymous FILE_VIEW

anonymous LOG_VIEW

anonymous MILESTONE_VIEW

anonymous REPORT_SQL_VIEW

anonymous REPORT_VIEW

anonymous ROADMAP_VIEW

anonymous SEARCH_VIEW

anonymous TICKET_CREATE

anonymous TICKET_MODIFY

anonymous TICKET_VIEW

anonymous TIMELINE_VIEW

anonymous WIKI_CREATE

anonymous WIKI_MODIFY

anonymous WIKI_VIEW



Available actions:

BROWSER_VIEW, CHANGESET_VIEW, CONFIG_VIEW, FILE_VIEW, LOG_VIEW,

MILESTONE_ADMIN, MILESTONE_CREATE, MILESTONE_DELETE, MILESTONE_MODIFY,

MILESTONE_VIEW, REPORT_ADMIN, REPORT_CREATE, REPORT_DELETE, REPORT_MODIFY,

REPORT_SQL_VIEW, REPORT_VIEW, ROADMAP_ADMIN, ROADMAP_VIEW, SEARCH_VIEW,

TICKET_ADMIN, TICKET_APPEND, TICKET_CHGPROP, TICKET_CREATE, TICKET_MODIFY,

TICKET_VIEW, TIMELINE_VIEW, TRAC_ADMIN, WIKI_ADMIN, WIKI_CREATE,

WIKI_DELETE, WIKI_MODIFY, WIKI_VIEW



——————————————————-

# svn PATH 설정

——————————————————-

cd ~

echo ‘export PATH="$PATH:/usr/local/bin"‘ >> .profile



——————————————————-

# trac + svn 권한 설정

——————————————————-

htpasswd -c .htpasswd ID 로 생성



create the .htpasswd in /var/trac/your_project/, for exampe:



[users]

YourName:8d2yxeC7vAkiQ

HisName:7$4k2Ci4QoVFc



# SVN authz

Edit the file authz in /var/svn/your_project/conf/, for example:



[groups]

admin = YourName



[/]

@admin = rw

HisName = r

* =



——————————————————-

trac-digest.py 패스워드 생성기

——————————————————-

from optparse import OptionParser

import md5



# build the options

usage = “usage: %prog [options]”

parser = OptionParser(usage=usage)

parser.add_option("-u", “–username",action="store", dest="username", type = “string",

help="the username for whom to generate a password")

parser.add_option("-p", “–password",action="store", dest="password", type = “string",

help="the password to use")

(options, args) = parser.parse_args()



# check options

if (options.username is None) or (options.password is None):

parser.error("You must supply both the username and password")



# Generate the string to enter into the htdigest file

realm = ‘trac’

kd = lambda x: md5.md5(’:’.join(x)).hexdigest()

print ‘:’.join((options.username, realm, kd([options.username, realm, options.password])))



——————————————————-

SVN & trac 구동(digest파일 사용)

——————————————————-


svnserve -d -r /data/repository/svn


python trac-digest.py -u username -p password >> c:\digest.txt

python tracd -d –port 8000 –auth proj_name,c:\digest.txt,trac c:\path\to\proj_name



——————————————————-

참조자료

——————————————————-

[TracInstall]

[TracOnOsxServerNoFink]

[TracEnvironment]

[TracPermissions]

[TracIni]



by


Tags : , , , , , , , , , ,

  • 재미있게 읽으셨나요?
    방랑자의 이야기.
    월풍도원에선 기부를 받습니다.

SCM도구 서브버젼 설치법, 서브버젼의 설정과 사용법.(SubVersion installation guide) [소프트웨어 형상관리,SCM,서브버젼,subversion,installation,서브버젼 설치법,서브버젼 사용법]

이미지출처 : blog.codesion.com

SCM(software configuration management)도구의 하나인 SVN의 설치 및 설정방법을

여러 웹페이지를 참조하여 간단하게 사용법을 정리해 보았다.








————————————————-

서브버젼 설정

————————————————-

1. 서브버젼을 설치한다. (http://subclipse.tigris.org/)



2. 저장소를 생성한다.

svn설치폴더\bin\svnadmin create 저장소명(ex: NC_DEV_TEAM) –fs-type fsfs

–fs-type 옵션에서 fsfs 는 파일시스템을 의미하며, bdb 는 버클리DB 를 의미한다.



3. NC_DEV_TEAM\conf\svnserve.conf를 수정한다.

(주석의 제거가 필요하다. 아래의 예 참조.)

——————————-

[general]

anon-access = none

auth-access = write

password-db = passwd

——————————-

anon-access : 계정이 없는 anonymous 의 권한을 설정한다.

auth-access : 계정이 있는 경우의 권한을 설정한다.

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

password-db = password : 계정을 password 파일을 사용한다.



4. NC_DEV_TEAM\conf\passwd를 수정한다. (계정설정)

——————————

[users]

testid = testpass

——————————-

5. 아래와 같이 실행한다.

cd C:\Program Files\Subversion\bin

svnserve -d -r ./NC_DEV_TEAM



6. 서비스는 다음과 같이 등록한다.

cygrunsrv –install svnserve -p 설치폴더\bin\runsvn.bat



net start svnserve



net stop svnserve

————————————————–

Linux

————————————————–



Subversion과 연관된 프로그램들을 컴파일 하고 설치하겠습니다.



[edit]

3.1 OpenSSL 컴파일과 설치 ¶



# tar vxzf openssl-0.9.7c.tar.gz

# cd openssl-0.97c

openssl-0.97c# ./config

openssl-0.97c# make

openssl-0.97c# make install

[edit]

3.2 Berkeley DB 컴파일과 설치 ¶



# tar vxzf db-4.3.28.NC.tar.gz

# cd db-4.3.28.NC

db-4.3.28.NC# cd build_unix

db-4.3.28.NC/build_unix# ../dist/configure

db-4.3.28.NC/build_unix# make

db-4.3.28.NC/build_unix# make install

db-4.3.28.NC/build_unix# echo “/usr/local/BerkeleyDB.4.3/lib” >> /etc/ld.so.conf

db-4.3.28.NC/build_unix# ldconfig



3.3 Apache 컴파일과 설치 ¶

Apache는 설치해도 되고 안 해도 됩니다. 웹으로 저장소를 공개한다거나. http:// 프로토콜을 이용해서 subversion을 이용하고 싶다면 설치하도록 합니다.



# tar vxzf httpd-2.0.54.tar.gz

httpd-2.0.54# ./configure –prefix=/usr/local/apache2 –enable-suexec \

–enable-so –with-suexec-caller=bin \

–enable-ssl –with-ssl=/usr/local/ssl –enable-cache \

–enable-ext-filter –with-z=/usr/include –enable-dav \

–with-dbm=db4 –with-berkeley-db=/usr/local/BerkeleyDB.4.2

httpd-2.0.54# make

httpd-2.0.54# make install



[edit]

3.4 Subversion 컴파일과 설치 ¶

데비안의 경우 zlib1g-dev, libxml2-dev, libexpat1-dev의 패키지가 필요합니다. 다른 배포판의 경우도 거의 같은 이름으로된 패키지가 있을 것입니다. 이 패키지들은 라이브러리와 헤더 파일을 포함하고 있는 것들입니다.



앞에서 Apache를 설치했을 경우



# tar vxzf subversion-1.2.1.tar.gz

# cd subversion-1.2.1

subversion-1.2.1# ./configure –with-zlib –with-ssl=/usr/local/ssl \

–with-apr=/usr/local/apache2 \

–with-apr-util=/usr/local/apache2 \

–with-apxs=/usr/local/apache2/bin/apxs \

–with-dbm=db4 –with-berkeley-db=/usr/local/BerkeleyDB.4.3

subversion-1.2.1# make

subversion-1.2.1# make install



Apache를 설치하지 않았을 경우



# tar vxzf subversion-1.2.1.tar.gz

# cd subversion-1.2.1

subversion-1.2.1# ./configure –with-zlib –with-ssl=/usr/local/ssl \

–with-dbm=db4 –with-berkeley-db=/usr/local/BerkeleyDB.4.3

subversion-1.2.1# make

subversion-1.2.1# make install



———————————————————————

서브버젼 저장소 생성시 권장 스텝

———————————————————————

There are many ways to begin a repository. I’d suggest the following:

(1) Use “svnadmin create” (once) much as you have to create an empty repository (at revision 0): so that would be something like “svnadmin create /var/repos”

(2) Locally, create your desired repository layout with trunk, tags, branches and any project directories as desired

(3) Use “svn import” on (2) to bring those directories into the repository (revision 1)

(4) Use “svn checkout” from the trunk in the repository to create a working copy of the empty trunk

(5) Locally, set up your source files in your working copy.

(6) Tell SVN about them using “svn add”

(7) Commit these to the repository (revision 2) with “svn commit”

Now trunk and tags are in the same repository, and the “svn copy” should work.



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

서브버젼 클라이언트 설정법

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



1. 이클립스를 실행한다.



2. Help>Software Update>find and Install

에서 다음 작업을 수행한다.

1) Search for new features to install 선택 (next)

2) 다음의 URL을 추가하고 체크박스를 선택한후 finish

————————————————

Name: Subclipse

URL: http://subclipse.tigris.org/update_1.0.x

————————————————



3. Window>Preferences>Team>SVN

부분에서 환경설정이 가능하다.

인터페이스는 JavaSVN으로 설정한다.



4. Window>Customize Perspective에서 SVN관련 부분을 체크해준다.



5. Repository에서 공유할 프로젝트를 우클릭한후

Team>share Project에서 SVN을 선택해 준다.



6. 서버 주소를 적어준후 계정정보를 입력한다.

svn://(IP or Domain:Port)/RepositoryName



###################################################

*올라간 파일의 프로퍼티 변경을 가능하게 해주려면

repository/hooks폴더안에 다음의 파일을 추가해준다.



pre-revprop-change.bat

————————————————–

REM REPOS=%1

REM REV=%2

REM USER=%3

REM PROPNAME=%4

if “%4″=="svn:log” goto :end

:err

exit 1

:end

exit 0



by


Tags : , , , , ,

  • 재미있게 읽으셨나요?
    방랑자의 이야기.
    월풍도원에선 기부를 받습니다.