Trac - project management ( issue tracking system )

익명 사용자의 이미지

1. 소개

http://projects.edgewall.com/trac/

Quote:

Trac is an enhanced wiki and issue tracking system for software development projects.

비교적 복잡하지 않은 issue tracking system 으로 subversion(svn) 을 소스관리, wiki 를 문서관리포맷으로 사용하고 있습니다.

위키에 익숙하신 분은 쉽게 적응하실 수 있으리라 생각됩니다.
또한 svn 을 사용하시는 분들께는 금상첨화라고 볼수 있죠.^^

현재 버전은 0.8 버전이지만, 사용해본 짧은 경험으로 상당히 완성도가 있음을 느꼈습니다.(개인차가 있음을 밝힙니다.)

2. 설치

데비안,우분투 사용자
http://projects.edgewall.com/trac/wiki/TracOnDebian 참조

그외
http://projects.edgewall.com/trac/wiki/TracInstall 참조

위 설치문서대로 하면 문제없이 사용할 수 있었습니다.

trac 자체는 설치가 쉽습니다. 뒷부분의 apache 설정을 조심해서 하시면 큰 문제는 없을 듯 합니다.

3. 국내자료

http://zope.openlook.org/blog/daylist_html?year=2004&month=12&day=21
를 보시면 perky 님이 상세한 리뷰를 해주셨습니다.
그외에는 찾을수가 없었습니다.

4. 한글화

trac 사이트 내에서는 제공하지 않고 있습니다.
위의 perky 님의 리뷰자료는 한글화가 되어 있는데, 공개는 하지 않고 계십니다.(요청을 하면 공개해주실지도..)

첨부파일에는 제가 임의로 한글화한 자료입니다. (50%도 안된자료이지만 필요하신분은 쓰시길..)
F/OSS 프로젝트 게시판은 첨부가 안되네요.

첨부파일 링크 : http://bbs.kldp.org/download.php?id=3631
한글화 첨부파일 설명

Quote:

trac 은 Clearsilver 템플릿 라이브러리를 씁니다.
/usr/share/trac 의 templates 폴더의 내용을 한글화 하였습니다.
UTF-8 환경이라 EUC-KR 환경을 쓰시는 분은 깨질 듯 합니다.
(첨부파일을 푸시고, templates 폴더를 교체하시면 됩니다.)
설치환경에 따라 /usr/share/trac 의 위치가 아닐수도 있을 듯 합니다.

5. 문제점
UTF-8 환경을 사용하다보니, 윈도우에서 svn 커밋후에 trac 의 소스브라우저를 보면 내용이 깨집니다.
저장시 UTF-8 로 저장해야 할 듯 합니다.
EUC-KR 환경은 큰 영향이 없을 듯 합니다.(써보신분 확인바랍니다.)

File attachments: 
첨부파일 크기
Image icon trac_ticket_property.jpg31.95 KB
Package icon templates.zip31.46 KB

댓글

권순선의 이미지

손님도 파일을 업로드할 수 있도록 권한을 수정하였습니다....

happyjun의 이미지

우선 좋은 프로젝트를 소개해주셔서 감사합니다.

소스의 한글등이 깨지는 문제는 <projevn>/conf/trac.ini 에서 [trac] 의 default_charset을 소스의 인코딩으로 바꿔주시면 잘 나옵니다.

팀에서 eventum + moin moin 을 사용하였는데 trac으로 변경을 고려하고 있습니다. 개인적으로 며칠 사용하였는데 즐겁습니다. :)

subversion으로 소스를 관리하고, 문서는 wiki로 관리하는 중소 규모의 조직이라면 좋은 선택이라고 봅니다.

----------------------------------------
http://moim.at
http://mkhq.co.kr

espereto의 이미지

관심은 있는데...... 회사에 도입해볼까 하고 넌지시 알려줬지만 CVS에서 SubVersion으로 이전한 지 얼마 안 된 상태라...... -_-

RoundUp을 이용해서 작은 프로젝트에서는 써먹어 본 적이 있지만요.

엑셀로만 관리되는 버그 리스트들...... 엑셀 문서에 안 들어가고 메일로만 날아다니기도 하고...... 어지럽죠. 사라지기도 하고...... -_-

뭐 여하간, 현재는 궂이 바꾸겠다는 의지도 없어서...(조만간 회사를 옮기려고 하고 있어서) 새로 가는 곳에서는 잘 갖춰져 있어야 할텐데요.. :)

개인적으로도 이런 시스템이 필요하긴 한데, 귀차니즘때문에 아직 설치를 안 해 보고 있군요. SubVersion + wiki 에 여러 기능들이 매우 맘에 드는데 말이죠.

offree의 이미지

trac 쓰시는 분들 마일스톤 : milestone 을 어떻게 쓰시나요?

첨부파일 이미지에 보면, milestone1 , milestone2 이렇게 있는데,
무엇을 의미하는 것인가요?

컴포넌트도 마찬가지 이구요.

select 박스의 옵션을 바꿀 수 있으면 좋겠는데, 그런 설정을 하는 곳을 모르겠네요.
찾아봐야 겠습니다. - 소스를 수정해야 하나?

trac 이 간단해서 바로 사용하기는 좋은 것 같습니다.
다만 "이렇게 되면 좋을 텐데" 정도의 아쉬움은 있네요.

댓글 첨부 파일: 
첨부파일 크기
Image icon 0바이트

사용자가 바꾸어 나가자!!

= about me =
http://wiki.kldp.org/wiki.php/offree , DeVlog , google talk : offree at gmail.com

happyjun의 이미지

trac 안에 있는 기본 위키에 보시면 사용법이 나와있습니다.

우선 trac에 로긴을 하셔야 기능을 다 사용할 수 있습니다. 로긴만 성공하신다면 trac이 쉬워집니다. :)

권한이 있을 경우 milestone 탭에 보시면 추가, 삭제, 변경이 가능합니다.

티켓의 컴포넌트, 버전, 심각성, 우선 순위등은 웹에서 직접 변경을 안되고 trac-admin 명령어를 이용해서 변경할 수 있습니다. trac 위키의 TracAdmin 페이지를 보시면 됩니다.

----------------------------------------
http://moim.at
http://mkhq.co.kr

sseopark의 이미지

firefox wrote:
4. 한글화

trac 사이트 내에서는 제공하지 않고 있습니다.
위의 perky 님의 리뷰자료는 한글화가 되어 있는데, 공개는 하지 않고 계십니다.(요청을 하면 공개해주실지도..)

첨부파일에는 제가 임의로 한글화한 자료입니다. (50%도 안된자료이지만 필요하신분은 쓰시길..)


(허접하지만) TracTermsJa를 기반으로 만든 TracTermsKo도 있습니다. :oops:
익명 사용자의 이미지

trac+subversion 연동시 timeline이나 소스 보기를 할 경우 다음과 같은 에러가 발생합니다.

Trac detected an internal error:
('Berkeley DB error while opening environment for filesystem /home/svn/testproj/db:\nPermission denied', 160029)
........

SubversionException: ('Berkeley DB error while opening environment for filesystem /home/svn/testproj/db:\nPermission denied', 160029)

이때 testproj의 db 디렉토리의 권한을 chmod -R 777 로 바꿔주면 제대로 작동을 하더군요..
그런데 문제는 소스 프로젝트의 db 디렉토리 권한을 777로 준다는게 영 마음에 걸리는군요...
trac+subversion을 사용하시는 분들중에서 이처럼 subversion의 db권한에 문제가 있었던 분 계신가요.. 그리고 subversion의 db 디렉토리 권한을 어떻게 주셔서 사용하는지 궁금합니다. 아시는 분 조언 부탁드립니다.

Tony의 이미지

trac 한글화 fork 프로젝트를 하나 열었으면.. 하는 바램이 있는데요.....

yielding의 이미지

trac의 FAQ에보면
How can I create a nice URL to access trac.cgi?
라는 질문에 답이 windows기반으로 나와있는데
제가 쓰는 환경에서는 제대로 되지 않아서 질문을 드립니다

제 환경은

FreeBSD 5.4
apache 2.0.54
trac 0.8.4
subversion 1.2

입니다.

유닉스 환경에서 깔끔하게 설치를 성공하신 분 도움을 부탁드리겠습니다...
:o

Life rushes on, we are distracted

offree의 이미지

http://projects.edgewall.com/trac/wiki/TracPrettyUrls

정도면 되지 않을까요? 핵심은 rewrite module 인듯.

사용자가 바꾸어 나가자!!

= about me =
http://wiki.kldp.org/wiki.php/offree , DeVlog , google talk : offree at gmail.com

stania의 이미지

Anonymous wrote:
trac+subversion 연동시 timeline이나 소스 보기를 할 경우 다음과 같은 에러가 발생합니다.

Trac detected an internal error:
('Berkeley DB error while opening environment for filesystem /home/svn/testproj/db:\nPermission denied', 160029)
........

SubversionException: ('Berkeley DB error while opening environment for filesystem /home/svn/testproj/db:\nPermission denied', 160029)

이때 testproj의 db 디렉토리의 권한을 chmod -R 777 로 바꿔주면 제대로 작동을 하더군요..
그런데 문제는 소스 프로젝트의 db 디렉토리 권한을 777로 준다는게 영 마음에 걸리는군요...
trac+subversion을 사용하시는 분들중에서 이처럼 subversion의 db권한에 문제가 있었던 분 계신가요.. 그리고 subversion의 db 디렉토리 권한을 어떻게 주셔서 사용하는지 궁금합니다. 아시는 분 조언 부탁드립니다.

혹시 Apache 를 사용하여 trac 을 돌리시나요?
그렇다면 별다른 방법이 없을 수도 있습니다.
웹서버가 디비에 접근해야 하기 때문에 others 쪽에 권한이 반드시 필요합니다.
아니면 프로젝트 그룹에 웹서버 pseudo user 를 넣으시고 그룹 권한을 주셔도 될지 모르겠군요.

그 밖에, 유저가 그룹 권한 하에서 tracd 라는 전용 standalone trac daemon 을 사용한다면 이 또한 가능해 질 것 같습니다.

자세한 내용은 유저, 그룹, 퍼미션의 관계와 Apache 가 어떻게 cgi 를 수행하는지 알아보시거나, 추가로 질문 하시기 바랍니다 :)

stania의 이미지

offree wrote:
trac 쓰시는 분들 마일스톤 : milestone 을 어떻게 쓰시나요?

첨부파일 이미지에 보면, milestone1 , milestone2 이렇게 있는데,
무엇을 의미하는 것인가요?

컴포넌트도 마찬가지 이구요.

select 박스의 옵션을 바꿀 수 있으면 좋겠는데, 그런 설정을 하는 곳을 모르겠네요.
찾아봐야 겠습니다. - 소스를 수정해야 하나?

마일스톤을 가장 마일스톤 답게 쓰고 있는 곳은 역시나
trac project 의 trac 입니다.
http://projects.edgewall.com/trac/newticket
http://projects.edgewall.com/trac/roadmap
을 한 번 훑어보세요.

컴포넌트는, 프로젝트에서 흔히 있는 모듈.. 정도에 해당되는 말이 아닌가 싶습니다. 여러 요구사항(ticket 으로 관리되는 issue) 라는 게 프로젝트 전체에 대한 요구사항도 있을 수 있지만 특정 컴포넌트(모듈)에 대한 것도 있을 수 있으니까, 그것들까지 관리할 수 있게 해주는 것인 듯 합니다.

마일스톤에 대해 간단히 설명을 붙이자면,
마일스톤은 말 그대로 이정표 입니다.

프로젝트가 현재까지 얼마나 진행되었는지, 앞으로 얼마나 무언가를 더 해야 할지를 알려주는 시스템입니다. 예를 들어 현재 개발버전(리비전과는 다른 개념입니다)이 0.8 인데, 곧 릴리즈할 0.9 버전에서 추가할 기능은 a, b, c 입니다! 라는 계획이 있다고 합시다. 그렇다면 trac 에서는 a, b, c 에 대한 티켓을 만드시고, 그 티켓들의 마일스톤을 0.9 로 지정하는 겁니다. 이렇게 함으로써 0.9 버전의 마일스톤(이정표) 는 a, b, c 가 완성되는 시점이다! 라고 표시하는 것이지요. 마일스톤에 도달하는(reach) 시점에서 0.9 버전을 릴리즈 하면 되는 것입니다.

제 이해가 잘못되었다면 누구든지 지적해 주시기 바랍니다 :)

그나저나 마일스톤 수정은, 위엣분이 언급하신 대로 trac admin(trac-admin 프로그램이 아닌) 정도가 되어야 기본 설정 하에서 마일스톤 관련 옵션을 관리하실 수 있습니다.

trac-admin 프로그램을 이용한 권한 설정(http://projects.edgewall.com/trac/wiki/TracPermissions) 및 로그인 방법(아파치를 사용하실 경우 .htaccess, htpasswd 관련 문서와 함께 http://projects.edgewall.com/trac/wiki/TracInstall 의 Configuring Apache 부분)을 참조해 보시기 바랍니다.

choco6의 이미지

stania 님께...
말씀하신데로 Apache를 사용하여 trac을 돌리고 있습니다.
그래서 아파치 설정파일(httpd.conf)에서 아파치 데몬과 그룹 권한을 다음과 같이 주고,

User nobody
Group nobody

subversion에 등록된 프로젝트의 db 디렉토리 유저 또한 처음부터 nobody로 주었죠.. 그럼 아파치 데몬 유저와 동일한 유저가 되는데도 불구하고 위와 같이 permission denied가 발생합니다.
아파치 데몬이 돌아갈 때는 nobody와 다른 권한이 되는건가요.

kall의 이미지

firefox wrote:
4. 한글화

trac 사이트 내에서는 제공하지 않고 있습니다.
위의 perky 님의 리뷰자료는 한글화가 되어 있는데, 공개는 하지 않고 계십니다.(요청을 하면 공개해주실지도..)


공개는 되어 있었습니다. 코멘트에 있었는데..코멘트가 날아갔군요..구글캐쉬에 링크가 남아 있었습니다. :)

http://openlook.org/distfiles/trac-ktdms-041222.tar.gz

----
자신을 이길 수 있는자는
무슨짓이든 할수있다..
즉..무서운 넘이란 말이지 ^-_-^
나? 아직 멀었지 ㅠㅠ

stania의 이미지

choco6 wrote:
stania 님께...
말씀하신데로 Apache를 사용하여 trac을 돌리고 있습니다.
그래서 아파치 설정파일(httpd.conf)에서 아파치 데몬과 그룹 권한을 다음과 같이 주고,

User nobody
Group nobody

subversion에 등록된 프로젝트의 db 디렉토리 유저 또한 처음부터 nobody로 주었죠.. 그럼 아파치 데몬 유저와 동일한 유저가 되는데도 불구하고 위와 같이 permission denied가 발생합니다.
아파치 데몬이 돌아갈 때는 nobody와 다른 권한이 되는건가요.

permission denied 일 때 디렉토리가 어떤 퍼미션을 가지고 있었는지 말씀하지 않으셨습니다 :) 알려주시면 다시 생각해볼게요.

아파치 데몬이 돌아갈 때는 suexec 모듈을 사용하지 않는 이상 nobody 유저로 실행이 될 겁니다.

참고로 저는 프로젝트 참여자를 그룹으로 묶고, 그 그룹에 아파치 유저를 포함시킨 뒤, 저장소의 모든 소유그룹을 바꿔주고, 그 디렉토리에 setgid bit 을 설정해 두었습니다. 퍼미션은 setgid bit 을 포함해서 2770 으로 주었습니다. 이렇게 하니 others 에 아무런 권한을 주지 않아도 trac 이 잘 동작했습니다. 참고가 되셨으면 좋겠네요 :)

choco6의 이미지

permission error가 발생할 때 svn의 db내용물을 ls해 보면 다음과 같습니다.

-rwxrwxrwx 1 nobody nobody 1738 10월 16 2004 DB_CONFIG
-rwxrwxrwx 1 root root 16384 7월 14 11:37 __db.001
-rwxrwxrwx 1 root root 278528 7월 14 11:37 __db.002
-rwxrwxrwx 1 root root 327680 7월 14 11:37 __db.003
-rwxrwxrwx 1 root root 892928 7월 14 11:37 __db.004
-rwxrwxrwx 1 root root 16384 7월 14 11:37 __db.005
-rwxrwxrwx 1 nobody nobody 122880 7월 14 11:56 changes
-rwxrwxrwx 1 nobody nobody 8192 7월 14 11:56 copies
-rw-r--r-- 1 root root 1046935 7월 14 11:56 log.0000000106
-rw-r--r-- 1 root root 1047665 7월 14 11:56 log.0000000107
-rw-r--r-- 1 root root 835893 7월 14 11:56 log.0000000108
-rwxrwxrwx 1 nobody nobody 106496 7월 14 11:56 nodes
-rwxrwxrwx 1 nobody nobody 131072 7월 14 11:56 representations
-rwxrwxrwx 1 nobody nobody 8192 7월 14 11:56 revisions
-rwxrwxrwx 1 nobody nobody 17707008 7월 14 11:56 strings
-rwxrwxrwx 1 nobody nobody 40960 7월 14 11:56 transactions
-rwxrwxrwx 1 nobody nobody 8192 7월 14 11:56 uuids
[choco6@myserver db]$

제가 사용하는 환경은 linux서버에 subversion을 사용해서 repository로 삼고 클라이언트는 tortoiseSVN을 사용해서 svn://myserver.net/test 로 commit을 하고 있습니다.
문제는, 이렇게 커밋을 하고 나면 log는 위와 보시는 바와같이 root 유저로 로그가 남습니다. 이렇게 되면 trac에서 timeline으로 조회하면 어김없이 permission denied가 나오죠..

위 문제로 인해 svn에 commit할 때마다 일일이 svn의 db에 들어가 chmod 777을 해주어야 한다는 치명적인 문제가 있습니다. 그래야 trac에서 소스 프로젝트를 확인할 수가 있거든요..
아, 다른 분들은 어떻게 이 문제를 해결했을가요..

stania의 이미지

choco6 님,

chmod -R 2770 [REPOSITORY DIRECTORY]
chgrp nobody [REPOSITORY DIRECTORY]

정도로 저장소 디렉토리(db 디렉토리 뿐 아니라) 의 퍼미션을 변경하고 나서
변경사항 커밋을 하면, 로그 파일의 소유 그룹이 nobody 로 고정이 됩니다.

일단 커밋을 했을 때 소유 그룹 설정이 제대로 되었나 확인하시고 나서
trac 이 퍼미션 관련 권한을 다시 보여주는지 확인해봐주세요

choco6의 이미지

stania님께..
대충 문제의 원인을 찾아가는 것 같습니다. stania님이 가르쳐주신 방법으로 repository 디렉을 변경시킨 후에 svn에서 변경 내용을 commit하면 db디렉토리의 로그에 다음과 같은 로그가 생성이 됩니다.

-rw-r--r-- 1 root nobody 166903 7월 14 13:12 log.0000000109

위에서 보면, user만 w권한이 있고 group은 read 권한만 있으므로 trac에서 변경내역을 조회하면 permission 에러가 나는 것이 아닐가 추측하고 있습니다.
이건 subversion이 commit을 할 때 생성되는 log의 permission을 2770으로 주어야 하지 않을가 생각이 되네요. 이 방법이 맞는 것인지요..
그리고 subversion에서 생성하는 log의 권한을 2770으로 어떻게 줘야하는지... 끙~~ trac 이용하기 정말 어렵군요..T.T

stania의 이미지

choco6 wrote:
db디렉토리의 로그에 다음과 같은 로그가 생성이 됩니다.

-rw-r--r-- 1 root nobody 166903 7월 14 13:12 log.0000000109

위에서 보면, user만 w권한이 있고 group은 read 권한만 있으므로 trac에서 변경내역을 조회하면 permission 에러가 나는 것이 아닐가 추측하고 있습니다.
이건 subversion이 commit을 할 때 생성되는 log의 permission을 2770으로 주어야 하지 않을가 생각이 되네요. 이 방법이 맞는 것인지요..
그리고 subversion에서 생성하는 log의 권한을 2770으로 어떻게 줘야하는지... 끙~~ trac 이용하기 정말 어렵군요..T.T

아직 설정이 덜 된듯 싶습니다. 디렉토리 퍼미션 모양이 -rw-rws--- 가 되어야 합니다. 한 번 확인해주시구요.. 저같은 경우는 svn+ssh 를 쓰는데, 디렉토리에 setgid bit 이 잘 걸린 상태에서 로그파일 퍼미션이 적절히 잡히네요 ;ㅁ;
저 위에 -R 옵션으로 리커시브하게 설정하게끔 해드렸는데 그것이 제대로 적용이 안 되었을 수 있을지도 모릅니다 ;ㅁ;

2770 의 제일 앞에 붙는 2 ( setgid bit ) 때문에라도 그룹 관련 설정은 디렉토리 사이에서 아마도 상속이 될 겁니다.. (이 부분은 제가 잘못 알고 있을 수 있습니다)

흠.. 결정적으로 제가 fsfs 를 쓰는지라 저랑 환경이 약간 다르시네요 ;ㅁ;

그나저나 단순히 생각해봤을 때 r 권한이 있으면 조회 정도의 동작은 가능해야 할 것 같은데 이상하네요..

choco6의 이미지

말씀하신데로, -rw-rws---로 바꿔줘도 svn에서 commit만 하면 다시 -rw-r--r-- 로 바뀌어 버립니다..
제 생각에도 r 권한이 있으면 조회 정도의 동작은 가능해야 할 것 같은데 trac 이놈이 어떻게 된 건지 svn의 db 디렉토리 내용이 rwxrwxrwx가 되어야 permission denied없이 조회가 되는거에요..
rw_rw_rw_도 해보고 rwxrwxr__ 도 해봤지만 다 소용이 없더군요..
아.. 결국 회사 프로젝트에 trac을 적용하는 것을 포기해야할지.. 머리가 아픕니다. T.T

choco6의 이미지

테스트를 해본 결과 tortoiseSVN에서 subversion으로 commit을 할 때 svn의 db디렉토리의 내용이 stania님의 말씀대로 -rw-rws-- 만 유지되게 해줘도 trac을 운영할 수 있을 것 같습니다. 이렇게 하려면 subversion의 소스를 고쳐야 하나요?.. 아니면 subversion의 설정만으로도 가능한지... 아시는 분 조언 부탁합니다.

byteme의 이미지

http://subversion.tigris.org/faq.html#readonly

FSFS 로 backend를 바꾸는게 가장 편합니다. 베타때부터 fsfs쓰고 있는데 꽤 안정적입니다.

stania의 이미지

혹시나 bdb 와 fsfs 의 차이에 따른 문제인가 하고 확인해 봤으나
제 설정에서는 문제가 없습니다.

저는 어떻게 했는지 모두 말씀드릴테니, 도움 되셨으면 좋겠네요 .

이미 /home/svn , /home/trac 이 다음과 같은 상태입니다.
$ ls -ald /home/svn
drwxrwsr-x 7 root upinel 4096 2005-07-14 19:31 /home/svn/

svnadmin, trac-admin 으로 /home/svn/test /home/trac/test 를 만듭니다.

chmod -R g+rwx /home/svn/test /home/trac/test 를 해줍니다.
chmod -R o-rwx /home/svn/test /home/trac/test 도 해주었습니다.

체크아웃, 커밋등을 해도 퍼미션에 변화가 없습니다 :)
무려 제 umask 가 072 인데도 말이죠 ...

=3==3

아무래도 핵심은 setgid 비트가 제대로 작동하게 하는 것에 있는 듯 합니다.

:)

choco6의 이미지

stania님, byteme님.. 답변 감사드립니다.
혹시나 해서 현재 subversion 1.0.9 이었던 것을 fsfs가 지원되는 subversion 1.2.1로 업데이트하였습니다. 그리고 trac으로 프로젝트를 개설하려고 하는데 음.. 이번엔 다음과 같은 에러가..

[root@myserver tracproj]# trac-admin tractest initenv
Traceback (most recent call last):
File "/usr/bin/trac-admin", line 34, in ?
from trac import sync
File "/usr/lib/python2.3/site-packages/trac/sync.py", line 22, in ?
from svn import core, fs, delta, repos
ImportError: No module named svn

이 녀석이 svn 모듈을 못찾고 난리네요.. 제가 python 언어를 잘 모르는 관계로 관련서적을 찾아서 뒤져봐야 하겠지만, 혹시 trac에서 svn 모듈을 제대로 import하도록 하기 위해선 특별한 설정을 해줘야 하나요?

stania의 이미지

파이썬 모듈이 따로 존재하는 모양입니다.
구해서 설치하셔야겠네요. :)

$ apt-cache search python | grep -i subversion
python2.4-subversion - Python modules for interfacing with Subversion (aka. svn)
python-svn - A(nother) Python interface to Subversion
python2.3-svn - A(nother) Python interface to Subversion
python2.4-svn - A(nother) Python interface to Subversion

choco6의 이미지

글세요.. trac의 Installation guide에 보면 Subversion Python bindings 항목에서 pysvn은 필요 없다고 나오던데요..

http://projects.edgewall.com/trac/wiki/TracInstall

위 글을 근거로 추측해 보면 svn모듈을 못찾는 것은 pysvn때문은 아닌 것 같다는....(svn모듈을 못찾는 것이지 pysvn모듈을 못찾는 것이 아니므로..)

comgineer의 이미지

trac-0.8.1 버전에서 subversion-1.2이상을 지원해주지 못합니다. trac-0.8.[234] 정도로 올리시면 버그 패치되어 있습니다.

http://projects.edgewall.com/trac/wiki/ChangeLog

0.8.2 ¶
* Compatibility with Subversion >= 1.2 fixed.

choco6의 이미지

제가 설치하고자 하는 trac은 0.8.4 버전이랍니다.
subversion-1.2.1에서 설치하는 모듈을 추척해 보니 svn라이브러리 모듈을 설치하는 디렉토리는 다음과 같습니다.

/usr/local/lib/svn-python/libsvn

그런데 trac-0.8.4에 있는 setup.py 소스를 뒤져봐도 svn모듈 라이브러리 경로를 지정해주는 옵션이 없네요... setup.py clean 하고 다시 setup.py install 을 해봐도 여전히 trac에서 svn모듈을 못찾고 있습니다.. 아, 정말 이게 왜 이리 x랄을 피우며 속을 썩히는지...--;;
trac에서 svn 라이브러리 모듈 경로를 지정해주는 곳이 대체 어디란 말인가요..

ktd2004의 이미지

두가지 방법이 있습니다.

# ln -s /usr/local/lib/svn-python/libsvn /usr/lib/python2.3/site-packages/libsvn
# ln -s /usr/local/lib/svn-python/svn /usr/lib/python2.3/site-packages/svn

# export PYTHONPATH=/usr/local/lib/svn-python
그리고 httpd.conf 파일에
<Location "/cgi-bin/trac.cgi">
  SetEnv PYTHONPATH "/usr/local/lib/svn-python/"
</Location>

사실 두번째 방법을 사용해보진 않았습니다.
저는 첫번째 방법으로 해결했습니다.

사실 두번째 방법은 사용해 보지 않았습니다.

ktd2004의 이미지

참고자료입니다.

제가 개인적으로 Trac의 templates을 한글화해서 사용하고 있습니다.

Trac 버전은 0.8.4 입니다.

혹시 필요하신 분은 사용하시길.
(제가 이해하기 편한식으로 한글화 했습니다.)

templates 디렉토리는 다음과 같습니다.

c:\python23\share\trac\templates
/usr/share/trac/templates
/usr/local/share/trac/templates

댓글 첨부 파일: 
첨부파일 크기
Package icon 0바이트
choco6의 이미지

네, 저는 libsvn 자체를 /usr/lib/python2.3/site-packages 에 카피시켜서 해결했는데 차라리 심볼릭 링크를 거는게 더 낫겠군요.. --;;
하여간..
결론은 또 안되었습니다. trac 프로젝트를 생성하는데 느닷없이 세그멘테이션 오류가.. --;;

[root@myserver projenv]# trac-admin tractest initenv
Creating a new Trac environment at /var/www/projenv/tractest
.......
Installing wiki pages
/usr/share/trac/wiki-default/TracTicketsCustomFields => TracTicketsCustomFields
/usr/share/trac/wiki-default/TracInstall => TracInstall
/usr/share/trac/wiki-default/TracAccessibility => TracAccessibility
.........
/usr/share/trac/wiki-default/TracNotification => TracNotification
/usr/share/trac/wiki-default/TracImport => TracImport
Indexing repository
세그멘테이션 오류

[root@myserver projenv]#

휴우~.. 아무래도 저희 회사에서는 trac을 이용할 수 있는 팔자가 아닌가 봅니다.. 이건 어떻게 하나를 해결하고 넘어가면 계속 또 다른 문제가 튀어나오는지..... 제가 무식한 것도 어느정도 문제이긴 하지만 이렇게 툴 하나 설치한번 하기 힘들어서야...
포기하고 회사 서버에서 trac을 지우려고 install 문서에서 uninstall을 찾아보니 uninstall은 소개조차 되어 있지 않는군요..
며칠간 이 놈 붙잡고 끙끙댄걸 생각하면... --+

정태영의 이미지

Quote:
# emerge -pv trac

These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild N ] app-text/silvercity-0.9.5-r1 181 kB
[ebuild N ] dev-python/pysqlite-1.0.1 40 kB
[ebuild N ] dev-libs/clearsilver-0.9.7 -apache2 +java +perl +python -ruby +zlib 368 kB
[ebuild N ] dev-python/docutils-0.3.5 -glep 582 kB
[ebuild N ] www-apps/trac-0.8.4 -vhosts 211 kB

Total size of downloads: 1,385 kB
unfix ~ #

젖과 꿀이 흐르는 젠투세상으로 오세요 ;)
그냥 emerge trac 만으로 모든게 =3=33

오랫동안 꿈을 그리는 사람은 그 꿈을 닮아간다...

http://mytears.org ~(~_~)~
나 한줄기 바람처럼..

tinywolf의 이미지

KTD wrote:
참고자료입니다.

제가 개인적으로 Trac의 templates을 한글화해서 사용하고 있습니다.

Trac 버전은 0.8.4 입니다.

혹시 필요하신 분은 사용하시길.
(제가 이해하기 편한식으로 한글화 했습니다.)

templates 디렉토리는 다음과 같습니다.

c:\python23\share\trac\templates
/usr/share/trac/templates
/usr/local/share/trac/templates

감사합니다!! 잘 사용하겠습니다..
번역을 해야하나 하고 있었는데.. 마른 하늘의 단비와 같군요!!

정태영 wrote:
젖과 꿀이 흐르는 젠투세상으로 오세요 ;)
그냥 emerge trac 만으로 모든게 =3=33

젠투 만세!!

전 이렇게 했습니다..

# emerge trac
# cd /usr/share/trac
# mv templates templates_en
# wget http://155.230.29.220/pub/trac_0.8.4_ko.tar
# tar xvf trac_0.8.4_ko.tar
# rm trac_0.8.4_ko.tar
# mv templates templates_ko
# ln -s templates_ko templates

젠투 쵝오!!

ㅡ_ㅡ;

notexist의 이미지

NetBSD에서도...
cd /usr/pkgsrc/www/trac; make install
하면 끝나는데용...ㅡㅡa

정태영 wrote:
Quote:
# emerge -pv trac

These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild N ] app-text/silvercity-0.9.5-r1 181 kB
[ebuild N ] dev-python/pysqlite-1.0.1 40 kB
[ebuild N ] dev-libs/clearsilver-0.9.7 -apache2 +java +perl +python -ruby +zlib 368 kB
[ebuild N ] dev-python/docutils-0.3.5 -glep 582 kB
[ebuild N ] www-apps/trac-0.8.4 -vhosts 211 kB

Total size of downloads: 1,385 kB
unfix ~ #

젖과 꿀이 흐르는 젠투세상으로 오세요 ;)
그냥 emerge trac 만으로 모든게 =3=33

There is more than one way to do it...

ogiwgi의 이미지

소스의 한글등이 깨지는 문제는 /conf/trac.ini 에서 [trac] 의 default_charset을 소스의 인코딩으로 바꿔주시면 잘 나옵니다.

->

윈도우 환경에서 Subversion과 Trac를 돌리고 있는데 그동안 한글이 깨지던 문제를 해결 못하고 있다가 default_charset을 cp949로 변경한후 해결이 되었습니다.

-----------------------------------------------------------

'뭐든지 하는 사람'부터 시작해야 '뭐든지 할 수 있는' 사람이 된다.

------------------------------------------------------------------------
'뭐든지 하는 사람'부터 시작해야 '뭐든지 할 수 있는' 사람이 된다.

hanbyeol의 이미지

회사에 Project Management System 이나 Issue/Bug Tracking System 을 도입할까해서 이것 저것 찾다가 Trac 을 설치해서 사용해 봤습니다.

제 업무가 워낙 중구난방인지라 trac을 PMS/ITS 용도로 쓰지 않고, 제 업무 관리용으로 쓰고 있습니다. 스케줄링 관리가 좀 약한게 문제이긴합니다면 업무 체크리스트로 아주 유용하게 쓰고 있습니다. 이번 분기 인사평가 때 유용한 참고자료로 활용할 수 있을 듯합니다. ^^

제 경우는 프로젝트 관리용이 아닌 일반 사무직에 해당하기 때문에, 마일스톤은 그냥 2006 1Q, 2006 2Q 이런 식으로 해 놨습니다. 컴포넌트는 제가 하는 일의 영역을 지정해 놨습니다.

저는 FreeBSD 에서 설치를 했습니다. 핵심 플러그인 webadmin 같은 놈은 FreeBSD 포트에 있습니다.

제가 작업한 걸 안 까먹기 위해서 간략하게 내용을 정리해 봤습니다. 정확하지 않을 수 있습니다만 FreeBSD 에서 설치하시는 분은 참고해 보시기 바랍니다.

http://jongyeob.com/moniwiki/wiki.php/TracInstall

kangbin의 이미지

윈도우 상에서 설치/활용법입니다. 저는 설치하기가 상당히 까다롭게 느껴져 정리해 보았습니다.
실력이 없고, 글재주가 없어서 볼만한지 모르겠네요.

hwp만 쓰다가 OpenOffice 2.0으로 만들어 보았습니다. pdf 파일로 변환하니 좀 낫네요~

모두 즐거운 하루 되세요~

천지간에 일어나는 모든일은 노력한 만큼 이루어진다. - 한당

익명사용자의 이미지

webadmin설치중 질문이 있습니다.
모든 설치를 성공적으로하고, ini도 수정했는데 admin 탭이 생기지 않습니다.
무엇을 해야할까요??
너무 막연한 질문인데요, 힌트라도 부탁드립니다.

lipide의 이미지

혹시 로그인을 안하신건 아닌가요?
trac webadmin은 TRAC_ADMIN 권한(permission)이 있는 계정으로 로그인 해야 admin탭이 보입니다. ^^

김재혁의 이미지

python2.4 setup.py build
running build
running build_py
running build_ext
building 'pysqlite2._sqlite' extension
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -fPIC -DMODULE_NAME="pysqlite2.dbapi2" -I/usr/local/include -I/usr/local/include/python2.4 -c src/module.c -o build/temp.linux-i686-2.4/src/module.o
In file included from src/module.c:24:
src/connection.h:33:21: sqlite3.h: 그런 파일이나 디렉토리가 없음
In file included from src/module.c:24:
src/connection.h:38: error: syntax error before "sqlite3"
src/connection.h:38: warning: no semicolon at end of struct or union
src/connection.h:86: error: syntax error before '}' token
src/connection.h:86: warning: type defaults to `int' in declaration of `Connection'
src/connection.h:86: warning: data definition has no type or storage class
src/connection.h:91: error: syntax error before '*' token
src/connection.h:91: warning: function declaration isn't a prototype
src/connection.h:92: error: syntax error before '*' token
src/connection.h:92: warning: function declaration isn't a prototype
src/connection.h:93: error: syntax error before '*' token
src/connection.h:93: warning: function declaration isn't a prototype
src/connection.h:94: error: syntax error before '*' token
src/connection.h:94: warning: function declaration isn't a prototype
src/connection.h:95: error: syntax error before '*' token
src/connection.h:95: warning: function declaration isn't a prototype
src/connection.h:96: error: syntax error before '*' token
src/connection.h:96: warning: function declaration isn't a prototype
src/connection.h:97: error: syntax error before '*' token
src/connection.h:97: warning: function declaration isn't a prototype
src/connection.h:99: error: syntax error before '*' token
src/connection.h:99: warning: function declaration isn't a prototype
src/connection.h:101: error: syntax error before '*' token
src/connection.h:101: warning: function declaration isn't a prototype
src/connection.h:102: error: syntax error before '*' token
src/connection.h:102: warning: function declaration isn't a prototype
In file included from src/module.c:25:
src/statement.h:37: error: syntax error before "sqlite3"
src/statement.h:37: warning: no semicolon at end of struct or union
src/statement.h:38: warning: type defaults to `int' in declaration of `st'
src/statement.h:38: warning: data definition has no type or storage class
src/statement.h:41: error: syntax error before '}' token
src/statement.h:41: warning: type defaults to `int' in declaration of `Statement'
src/statement.h:41: warning: data definition has no type or storage class
src/statement.h:45: error: syntax error before '*' token
src/statement.h:45: warning: function declaration isn't a prototype
src/statement.h:46: error: syntax error before '*' token
src/statement.h:46: warning: function declaration isn't a prototype
src/statement.h:48: error: syntax error before '*' token
src/statement.h:48: warning: function declaration isn't a prototype
src/statement.h:49: error: syntax error before '*' token
src/statement.h:49: warning: function declaration isn't a prototype
src/statement.h:51: error: syntax error before '*' token
src/statement.h:51: warning: function declaration isn't a prototype
src/statement.h:52: error: syntax error before '*' token
src/statement.h:52: warning: function declaration isn't a prototype
src/statement.h:53: error: syntax error before '*' token
src/statement.h:53: warning: function declaration isn't a prototype
src/statement.h:54: error: syntax error before '*' token
src/statement.h:54: warning: function declaration isn't a prototype
In file included from src/module.c:26:
src/cursor.h:35: error: syntax error before "Connection"
src/cursor.h:35: warning: no semicolon at end of struct or union
src/cursor.h:42: error: syntax error before '*' token
src/cursor.h:42: warning: type defaults to `int' in declaration of `statement'
src/cursor.h:42: warning: data definition has no type or storage class
src/cursor.h:46: error: syntax error before '}' token
src/cursor.h:46: warning: type defaults to `int' in declaration of `Cursor'
src/cursor.h:46: warning: data definition has no type or storage class
src/cursor.h:56: error: syntax error before '*' token
src/cursor.h:56: warning: function declaration isn't a prototype
src/cursor.h:57: error: syntax error before '*' token
src/cursor.h:57: warning: function declaration isn't a prototype
src/cursor.h:58: error: syntax error before '*' token
src/cursor.h:58: warning: function declaration isn't a prototype
src/cursor.h:59: error: syntax error before '*' token
src/cursor.h:59: warning: function declaration isn't a prototype
src/cursor.h:60: error: syntax error before '*' token
src/cursor.h:60: warning: function declaration isn't a prototype
src/cursor.h:61: error: syntax error before '*' token
src/cursor.h:61: warning: function declaration isn't a prototype
src/cursor.h:62: error: syntax error before '*' token
src/cursor.h:62: warning: function declaration isn't a prototype
src/cursor.h:63: error: syntax error before '*' token
src/cursor.h:63: warning: function declaration isn't a prototype
src/cursor.h:64: error: syntax error before '*' token
src/cursor.h:64: warning: function declaration isn't a prototype
src/cursor.h:65: error: syntax error before '*' token
src/cursor.h:65: warning: function declaration isn't a prototype
src/cursor.h:66: error: syntax error before '*' token
src/cursor.h:66: warning: function declaration isn't a prototype
In file included from src/module.c:29:
src/microprotocols.h:55: error: syntax error before '*' token
src/microprotocols.h:55: warning: function declaration isn't a prototype
src/module.c: In function `module_complete':
src/module.c:90: warning: implicit declaration of function `sqlite3_complete'
src/module.c: In function `init_sqlite':
src/module.c:294: warning: implicit declaration of function `sqlite3_libversion'
src/module.c:294: warning: passing arg 1 of `PyString_FromString' makes pointer from integer without a cast
error: command 'gcc' failed with exit status 1

ktd2004의 이미지

에러 메시지만 보면 SQlite3이 시스템에 설치가 되지 않은 것 아닌가요?

src/connection.h:33:21: sqlite3.h: 그런 파일이나 디렉토리가 없음

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.