생활코딩

Coding Everybody

branch/tag

토픽 생활코딩 > 프로젝트 관리 > 버전관리 시스템 > Subversion

개발의 흐름

trunk

  • 메인 개발 소스

branch

  • 분기된 개발 소스
  • 실험적인 기능추가
  • 출시를 위한 안정화 버전작업

tag

  • 기록이 필요한 스냅샷
  • 출시된 버전

 

예제

  1. 버튼을 누르면 인사 하는 웹페이지를 만든다.
  2. 웹페이지를 서비스에 반영해야 하는데
    1. 서비스에 반영하기 전에 기능개선을 해야 한다.
    2. 동시에 새로운 기능에 대한 개발을 계속해야 한다.
  3. 지금까지 작업한 버전을 branch해서 서비스 반영을 준비한다. 
  4. 새로운 기능은 trunk에서 계속 개발한다.
  5. 출시가 끝난 후에 branch의 변경점을 tag에 기록한다. 
  6. branch를 trunk에 반영(merge)한다. 

 

댓글

댓글 본문
  1. 미댈
    감사합니다!
  2. 뉘친소
    2번 영상 9분 언저리에서 트렁크와 브랜치의 작업이 바뀌어서 설명이 되고 있는듯...
    트링크에서 안정화 작업, 브랜치에서 새로운 기능을 해야하는 것 같은데요.
  3. 아닌강
    이해가 좀 안되는 부분이 있는데요.
    설명중에 예로든 실험적인 개발은 브렌치에서 하고 트렁크에서는 서비스 개선을 한다고 하셨는데, 후속 소스 설명은 그 반대 아닌가요?
    새로운 기능을 트렁크에서 하면 앞서 설명한 대로 채택되지 않았을때 되돌리기 힘들텐데요
    재가 잘못이해 한건가요?
    무려 7년전이군요 ㅎㅎ
  4. 태풍이
    TortoiseSvn branch/tag3 에 대한 질문입니다

    merge 작업 창중에

    Merge type을 고르는 창에서

    Merge a range of revisions
    Merge two different trees 만 있습니다.

    Reintegrate a branch 이 없습니다.

    왜일까요?
  5. 궁금했던 내용인데 여기서 많이 배우고 갑니다.
    정말 고맙습니다.
  6. deuxistmin
    잘 보았습니다!! 감사합니다.