Skip to content

Trac #

Find similar titles

10회 업데이트 됨.

Edit
  • 최초 작성자
    이크스
  • 최근 업데이트
    hyewonlee

Structured data

Category
Etc

Trac #

TracSubversion(SVN)과 연동되는 강력한 공동 개발 지원 도구이다.
즉, 여러명이 하나의 소프트웨어를 개발할 때 아이디어의 순환과 역할의 분담, 버그의 추적과 수정을 원할히 할 수 있도로 해 주는 도구이다. Trac은 Wiki, Roadmap, Ticket이라고 하는 크게 세 가지의 기능을 가지고 있는데, 각각의 기본적인 사용법에 대해서 다룰것이다.

  • 오픈소스 웹 기반 프로젝트 관리 및 버그 추적 툴
    • 테스터들이 작업 진행 상황을 기록하는 이슈 관리 시스템
  • SVN과 연동되는 공동 개발 지원 도구
  • Python 언어 사용하여 개발됨
  • Trac의 특징
    • 공동 작업에 효율성 증진
    • 소스 연동을 통한 접근성 강화
    • 프로젝트 이슈의 투명성
    • 릴리즈 관리

Trac의 기능 #

  • 위키 : 여러 사용자가 협업하면서 문서를 작성해가는 도구
  • 타임라인 : 개발에 관한 모든 변경사항이 시간의 순서에 따라 나열
  • 로드맵 : Milestone(마감기한) 기능제공
  • 소스 보기 : 소스코드의 Revision과 변경사항 내용 기록 확인
  • 티켓보기 : 현재 까지 발행된 티켓 확인
  • 새로운 티켓 : 프로젝트 팀원들이 해야 할 하나의 작업 단위 생성
  • 검색 : 개발된 Project의 내용을 조건에 맞게 검색

Main 페이지 #

Trac은 접속시 Wiki페이지를 기본적으로 볼 수 있다. Wiki는 일반적인 페이지들의 연결집합체라고 볼 수 있는데, 특징은 사이트 관리자만이 아니라 누구나 페이지 내용을 수정할 수 있고, 또 원하면 추가도 가능하다는 것이다.
페이지를 추가하고자 하면 Wiki하단의 'Edit this page'를 클릭하여 페이지 수정화면으로 들어간다. 페이지 중간 아무데에나, 다음과 같이 입력한다.
[wiki:"원하는 페이지 이름"]
이는 "원하는 페이지 이름"이라는 페이지로 가는 링크를 생성시켜준다. 하지만 아직 "원하는 페이지 이름'이라는 페이지가 생성되지 않았으므로 변경 사항을 저장하고 변경된 페이지를 봐도 회색의 물음표 링크가 뜰 것이다. 이이 링크를 클릭하면 드디어 새 페이지를 만드는 창이 나오고, 여기서 새 페이지를 작성한 후 저장하면 새 페이지가 만들어짐과 동시에 기존 페이지와의링크가 형성된다.
이와같이 모두 Wiki페이지들은 자신을 참조하는 1개이상의 링크를 가지고 있어야 하며, 그렇지 않을 경우 페이지는 존재하나 접속할 수 없는 상황이 발생하게 되어 주의를 요한다.
Wiki의 글 작성은 Wiki Formatting을 따른다. 또한 기본적으로 [wiki:]링크 방법을 쓰지 않아도 다음의 규칙을 따르는 단어는 자동으로 해당 페이지로 링크가 형성된다.

  • 영문으로만 구성되어 있다.
  • 대문자로 시작한다.
  • 대문자가 최소 2개이며, 대문자ㅗ아 대문자는 사이에 적어도 하나의 소문자를 가지고 있어야 한다.

Timeline 페이지 #

Wiki수정, Ticket발행 및 수정, 소스코드의 Commit등 개발과 관련한 모든 사항이 시간의 순서에 따라 나열되어 있다. 최근에 이 프로젝트에서 어떤 일들이 행해졌는지 보려면 이 Timeline페이지를 참조하면 된다.

Roadmap 페이지 #

Trac은 milestone이라는 개념을 가지고 있다. 이는 하나의 마감 기한을 뜻한다. 예를 들어, 1.0버전의 릴리즈를 2007년 12월 31일로 목표하고 있다면, 이는 하나의 마일스톤이 될 수 있고, 1.0버전의 릴리즈를 위해 행해지는 모든 개발 작업은 모두 이 마일스톤의 작업이 된다. 여러개의 마일스톤이 동시에 진행될 수도 있다. 이러한 모든 마일 스톤의 진행 상황을 깔끔한 그래프의 형태로 보여주는 페이지가 Roadmap이다.
Milestone은 프로젝트 관리자만이 추가/제거/수정 할 수 있다.

View Source 페이지 #

탐색기 모양을 하고 있는 편리한 Source-Viewer이다. 우측에는 Revision과 최근에 그 파일/폴더의 변경사항을 나타낸다.
Revision이란 그 파일/폴더가 총 몇 번째 Commit된 파일인지를 나타내는 수치이다. 1회의 Commit마다 Revision이 1씩 증가한다.

Ticket View 페이지 #

현재까지 발행된 모든 티켓을 나타낸다. 특히 가장 강력한 기능은, 우측 상단에 위차한 Custom Query인데, Ticket의 모든 세부사항들을 이용하여 원하는 Ticket만을 골라내 볼 수 있는 검색기능이다.

Ticket 이란? #

Trac에서 가장 중요한 개념으로, 해야 할 하나의 작업의 단위를 뜻한다.
예를 들어, 어떠한 버그가 발견되면, 발견한 사람은 해당 버그를 수정하라는 내용의 Tichket을 발행하여 개발자에게 Ticket을 전달한다.
Ticket을 받은 개발자는 해당 Ticket이 해결할 수 있는 문제일 경우 수용(Assign)해서 해당 문제를 해결하고 폐기한다.
만약 자신의 능력으로 힘들 경우, 다른 사람에게 Ticket을 전달하여 다른 사람이 해결할 수 있도록 한다. 
그 문제가 절대 고쳐지지 않는 문제라면, 해당 개발자는 Ticket을 폐기한다.
(각 Ticket을 클릭하면 Ticket의 세부내용을 볼 수 있으며, 만약 자신에게 전달된 Ticket이 완료된 Ticket이라면 Ticket을 수용/폐기 할 수 있다.

Milestone이란 #

  • 이정표란 뜻으로 trac에선 프로젝트의 중요한 시점으로 해석함
  • 특정시점(alpha, beta, release, iteration)으로 구분함
  • 버전의 의미와 함께 완료일(due date)의 의미도 있음
  • Milestone으로 나누어 Ticket을 관리함
    • Roadmap메뉴에서 Component 별로 Ticket을 확인 할 수 있음

Component란 #

  • 더 큰 프로그램이나 구조물에서 식별 가능한 일부분임
  • DBMS로 예를 들면 엔진, DB Manager, Client, Server 등의 각 부분을 설정해 각 부분을 좀더 체계적인 과리를 도움
  • 티켓과 연관된 프로젝트 요소로 티켓 관리에서 지정할 수 있음

Trac의 설치 #

설치방법 1 #

  1. TOW(Trac On Window)를 다운 받고 압축을 푼다.
  2. 압축 푼 폴더에서의 start-tow.bat파일을 실행하면 된다.
  3. TOW의 projects 설치가 되었는지 확인하기 위해 Trac페이지에 접속한다.
  4. TOW의 subversion 설치가 되었는지 확인
  5. TOW폴더에서의 start-tow.bat을 실행

설치방법 2 #

  1. trac 다운로드

    ** 주의사항 **
    2.7버전을 사용해야한다 3.X버전
    자신의 서버가 64bit라도 32bit의 trac을 설치해야한다. 
    원인은 레지스트리가 저장되는 위치가 달라서이다. 굳이 64bit를 설치하고 싶다면 설치후, 레지스트리 키를 export해서 직접경로를 수정해 다시 등록해줘야한다.
    
    1-1. https://trac.edgewall.org/wiki/TracDownload 접속
    1-2. "?Trac-1.0.12-py2-none-any.whl"다운
    1-3. cmd창 열고 whl저장한 경로에 접근하여 "python -m pip install Trac-1.0.12-py2-none-any.whl"입력하면 설치완료
    
  2. htpasswd로 계정 및 비밀번호를 생성한다.

    1-1. http://www.htaccesstools.com/htpasswd-generator-windows/ 접속
    1-2. htpassword.txt에 "아이디:비번" 형식으로 작성하고, Python 설치폴더에 저장
    sjyang:HYmH43Styh4/2
    ismun:SDXK6lPkjPSXk
    
  3. babel 패키지 설치

    1-1. cmd창 python -m pip install babel
    
  4. fcrypt 패키지 설치

    1-1. cmd창 python -m pip install http://www.carey.geek.nz/code/python-fcrypt/fcrypt-1.3.1.tar.gz
    
  5. Trac 프로젝트 초기화 및 생성

    1-1. cmd창, python폴더에 scripts폴더접근 이후,  trac-admin.exe d:\project initenv
    
    Creating a new Trac environment at c:\project
    
    Trac will first ask a few questions about your environment
    in order to initialize and prepare the project database.
    
     Please enter the name of your project.
     This name will be used in page titles and descriptions.
    
    Project Name [My Project]> project
    
     Please specify the connection string for the database to use.
     By default, a local SQLite database is created in the environment
     directory. It is also possible to use an existing MySQL or
     PostgreSQL database (check the Trac documentation for the exact
     connection string syntax).
    
    Database connection string [sqlite:db/trac.db]>
    
    .
    .
    .
    .
    
    Project environment for 'project' created.
    
    You may now configure the environment by editing the file:
    
      c:\project\conf\trac.ini
    
    If you'd like to take this new project environment for a test drive,
    try running the Trac standalone web server `tracd`:
    
      tracd --port 8000 c:\project
    
    Then point your browser to http://localhost:8000/project.
    There you can also browse the documentation for your installed
    version of Trac, including information on further setup (such as
    deploying Trac to a real web server).
    
    The latest documentation can also always be found on the project
    website:
    
      http://trac.edgewall.org/
    
    Congratulations!
    
  6. Trac Admin 계정 추가

    cmd창, python폴더에 scripts폴더접근 이후,  trac-admin.exe c:\project permission add ismun TRAC_ADMIN
    
  7. Trac 실행하기

    cmd창, python폴더에 scripts폴더접근 이후,  tracd.exe -p 9000 --basic-auth="project,c:\python27\password.txt,Bug" c:\project
    
    Server starting in PID 4220.
    Serving on 0.0.0.0:9000 view at http://127.0.0.1:9000/
    Using HTTP/1.1 protocol version
    

Incoming Links #

Related Data Sciences #

Related Articles #

0.0.1_20231010_1_v71