SlideShare a Scribd company logo
1 of 11
스터디#3 SVN을 이용한Branche와 Tag 관리 정형구
1. Branch / tags 관리의 필요성 * Branch/Tag 관리를 하지 않을 경우.  - 버전관리를 위해 ‘버전별 모든 소스’를 각각 백업 해야 한다.
2. Branch/Tag 관리를 위한 디렉토리 구조 Project#1 branches publish Branches 프로젝트 안의 작은 프로젝트 개념. 개발상 분기점이 있을 경우 관리 test mirror tags 1.0 Tags 프로젝트 버전관리. 버전변화가 생기는 시점의 소스를 관리 1.2 2.0 trunk src Trunk 프로젝트의 중심 – 개발이 이루어지는 디렉토리. 소스 및 문서파일 등 이 위치 docs
2. Branch/Tag 관리 방법 1) Branch/Tag 관리에 사용되는 명령어   - SVN 에는 Branch/Tag 관리를 위한 별도의 명령을 지원하지 않는다.   - 이슈가 되는 시점의 파일을 copy명령을 통해 복사하는 방법을 이용한다.   - 복사본을 남기고 싶은 상태에 해당하는 폴더로 파일을 이동한다.   - 버전업 : tags,  분기점 생성 : branches      Ex) 1.0 에서 1.1 로버전업이 되었을 경우 – tags/1.1 이란 폴더를 만들어 파일을 복사 2) Branch/Tag 관리 방법 – 쉘 명령어 이용 svn copy 원본위치저장될위치     Ex) 2.0 버전을 발표할 때, 발표시점의 소스를 남기고 싶은 경우      - svn copy  svn://203.236.230.36/trunk   svn://203.236.230.36/tags/2.0     Ex) 현재 개발중인 소스를 test 라는 이름으로 따로 관리하고 싶을 경우.      - svn copy  svn://203.236.230.36/trunk   svn://203.236.230.36/branches/test
2. Branch/Tag 관리 방법 3) Branch/Tag 관리 방법 - GUI 툴(Tortois SVN)을 이용 1. 소스폴더(SVN과 연동된) 에서 마우스 오른쪽클릭. 2. TortoiseSVN -> branch/tag 를 선택
2. Branch/Tag 관리 방법 3) Branch/Tag 관리 방법 - GUI 툴(Tortois SVN)을 이용 3. 저장될 경로를 입력.   - 버전업 일 경우 : tags   - 소스 분기 일 경우 : branches 4. 현재 작업에 대한 메시지를 입력.   - 이력 관리를 위해 가급적이면 자세하게 남긴다      Ex) 2.0 발표시점의 소스 5. OK 를 클릭하면 작업이 진행된다
3. 원하는 Branch/Tag 소스를 내려 받는 방법 Branch/Tag 관리 방법 – 쉘 명령어 이용 svn export 원본위치저장될위치     Ex) 2.0 버전으로 tagging 된 소스를 /data/2.0 으로 복사하고 싶을 때      - svn export svn://203.236.230.36/tags/2.0  /data/2.0     Ex) test 라는 이름으로 생성된 소스를 /data/test 로 복사하고 싶을 때      - svn copy  svn://203.236.230.36/branches/test  data/test
3. 원하는 Branch/Tag 소스를 내려 받는 방법 3) Branch/Tag 관리 방법 - GUI 툴(Tortois SVN)을 이용 1. 소스를 저장할 폴더에서 우클릭 2. TortoiseSVN -> Export 를 선택 *** SVN 과 연동된 폴더에서는 Export 를 하면 안됨.   - SVN 연동 폴더에서 Export 할 경우 현재 연결된 SVN 소스를 그대로 내려 받음.     (원하는 소스를 선택 할 수 없음.)
3. 원하는 Branch/Tag 소스를 내려 받는 방법 3) Branch/Tag 관리 방법 - GUI 툴(Tortois SVN)을 이용 3. 원하는 저장소를 선택.   Ex) ver2.0 의 소스  - svn://……/tags/2.0 4. 저장될 위치를 선택 5. OK 를 클릭하면 작업이 진행된다
4. SVN 을 이용시 지켜야 할 룰 1. Commit 을 할 때 반드시 코멘트를 남긴다.    - 수정된 파일 등의 정보를 남겨 변경이력 추적이 용이하도록 한다.    - 에러가 발생 할 경우, 언제 어떤 파일이 수정되어 에러가 생긴 것인지 파악하기 쉽다. 2. 출근 후 Update, 퇴근 전 Commit 을 반드시 하도록 한다.    - 작업자들간에 동일한 Revision 을 유지하기 위해, Update, Commit 을 습관적으로 한다. 3. Tag 는 버전업이 되는 시점에서, Branch 는 두가지 이상의 버전 비교가 필요할 때 생성한다.    - 이외의 경우는 반드시코멘트를 남겨 다른 작업자가 알아보기 쉽도록 한다.
5. 맺음말 SVN용 웹 인터페이스가 있음.    - 적용여부를 고려해 볼 필요가 있음. 참고 URL    - 피라시스닷컴: http://www.pyrasis.com/main/Subversion-HOWTO#s-5.14.1.1    - KLDP Wiki : http://wiki.kldp.org/wiki.php/SubversionBook

More Related Content

What's hot

Git 기본개념과 사용법 그리고 어플리케이션
Git 기본개념과 사용법 그리고 어플리케이션Git 기본개념과 사용법 그리고 어플리케이션
Git 기본개념과 사용법 그리고 어플리케이션
Dabi Ahn
 

What's hot (20)

Subversion
SubversionSubversion
Subversion
 
Svn server 설치(명준민_2015.07.10)
Svn server 설치(명준민_2015.07.10)Svn server 설치(명준민_2015.07.10)
Svn server 설치(명준민_2015.07.10)
 
디자이너를 위한 Svn 사용법
디자이너를 위한 Svn 사용법디자이너를 위한 Svn 사용법
디자이너를 위한 Svn 사용법
 
[기초] GIT 교육 자료
[기초] GIT 교육 자료[기초] GIT 교육 자료
[기초] GIT 교육 자료
 
140109 팀프로젝트 협업툴
140109 팀프로젝트 협업툴140109 팀프로젝트 협업툴
140109 팀프로젝트 협업툴
 
Envoy 를 이용한 코드 배포 자동화
Envoy 를 이용한 코드 배포 자동화Envoy 를 이용한 코드 배포 자동화
Envoy 를 이용한 코드 배포 자동화
 
CLT 소스품질 Jenkins 사용가이드
CLT 소스품질 Jenkins 사용가이드CLT 소스품질 Jenkins 사용가이드
CLT 소스품질 Jenkins 사용가이드
 
Basic study 1회차
Basic study 1회차Basic study 1회차
Basic study 1회차
 
git, 이해부터 활용까지
git, 이해부터 활용까지git, 이해부터 활용까지
git, 이해부터 활용까지
 
[17.01.19] docker introduction (Korean Version)
[17.01.19] docker introduction (Korean Version)[17.01.19] docker introduction (Korean Version)
[17.01.19] docker introduction (Korean Version)
 
[17.02.09] Github introduction (Korean Version)
[17.02.09] Github introduction (Korean Version)[17.02.09] Github introduction (Korean Version)
[17.02.09] Github introduction (Korean Version)
 
Git 분산버전관리 시스템(1)
Git 분산버전관리 시스템(1)Git 분산버전관리 시스템(1)
Git 분산버전관리 시스템(1)
 
Github 사용법
Github 사용법Github 사용법
Github 사용법
 
Git 기본개념과 사용법 그리고 어플리케이션
Git 기본개념과 사용법 그리고 어플리케이션Git 기본개념과 사용법 그리고 어플리케이션
Git 기본개념과 사용법 그리고 어플리케이션
 
11. git basic
11. git basic11. git basic
11. git basic
 
Git tutorials
Git tutorialsGit tutorials
Git tutorials
 
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
 
Git의 개념과 사용
Git의 개념과 사용Git의 개념과 사용
Git의 개념과 사용
 
Git는 머꼬? GitHub는 또 머지?
Git는 머꼬? GitHub는 또 머지?Git는 머꼬? GitHub는 또 머지?
Git는 머꼬? GitHub는 또 머지?
 
Git
GitGit
Git
 

Similar to How to use SVN in project

NDC 2015 마비노기 듀얼 패치 시스템
NDC 2015 마비노기 듀얼 패치 시스템NDC 2015 마비노기 듀얼 패치 시스템
NDC 2015 마비노기 듀얼 패치 시스템
tcaesvk
 
[오픈소스컨설팅]Kafka message system 맛보기
[오픈소스컨설팅]Kafka message system 맛보기 [오픈소스컨설팅]Kafka message system 맛보기
[오픈소스컨설팅]Kafka message system 맛보기
Chanyeol yoon
 

Similar to How to use SVN in project (18)

Maven
MavenMaven
Maven
 
Git
Git Git
Git
 
Git: A Motivating Introduction
Git: A Motivating IntroductionGit: A Motivating Introduction
Git: A Motivating Introduction
 
[오픈소스컨설팅]애플리케이션 빌드 및_배포가이드_v1.0_20140211
[오픈소스컨설팅]애플리케이션 빌드 및_배포가이드_v1.0_20140211[오픈소스컨설팅]애플리케이션 빌드 및_배포가이드_v1.0_20140211
[오픈소스컨설팅]애플리케이션 빌드 및_배포가이드_v1.0_20140211
 
svn 능력자를 위한 git 개념 가이드
svn 능력자를 위한 git 개념 가이드svn 능력자를 위한 git 개념 가이드
svn 능력자를 위한 git 개념 가이드
 
Git - Level 2
Git - Level 2Git - Level 2
Git - Level 2
 
NDC 2015 마비노기 듀얼 패치 시스템
NDC 2015 마비노기 듀얼 패치 시스템NDC 2015 마비노기 듀얼 패치 시스템
NDC 2015 마비노기 듀얼 패치 시스템
 
About git
About gitAbout git
About git
 
Oracle History #8
Oracle History #8Oracle History #8
Oracle History #8
 
OSS SW Basics Lecture 06: Software Configuration Management
OSS SW Basics Lecture 06: Software Configuration ManagementOSS SW Basics Lecture 06: Software Configuration Management
OSS SW Basics Lecture 06: Software Configuration Management
 
30기 정성학 "Git, sourcetree 사용법"
30기 정성학 "Git, sourcetree 사용법"30기 정성학 "Git, sourcetree 사용법"
30기 정성학 "Git, sourcetree 사용법"
 
Git workflow
Git workflowGit workflow
Git workflow
 
Git란 무엇인가?
Git란 무엇인가?Git란 무엇인가?
Git란 무엇인가?
 
[오픈소스컨설팅]Kafka message system 맛보기
[오픈소스컨설팅]Kafka message system 맛보기 [오픈소스컨설팅]Kafka message system 맛보기
[오픈소스컨설팅]Kafka message system 맛보기
 
Git Tutorial
Git TutorialGit Tutorial
Git Tutorial
 
Kafka introduce kr
Kafka introduce krKafka introduce kr
Kafka introduce kr
 
Git & Github Seminar-2
Git & Github Seminar-2Git & Github Seminar-2
Git & Github Seminar-2
 
2015 oce specification
2015 oce specification2015 oce specification
2015 oce specification
 

How to use SVN in project

  • 2. 1. Branch / tags 관리의 필요성 * Branch/Tag 관리를 하지 않을 경우. - 버전관리를 위해 ‘버전별 모든 소스’를 각각 백업 해야 한다.
  • 3. 2. Branch/Tag 관리를 위한 디렉토리 구조 Project#1 branches publish Branches 프로젝트 안의 작은 프로젝트 개념. 개발상 분기점이 있을 경우 관리 test mirror tags 1.0 Tags 프로젝트 버전관리. 버전변화가 생기는 시점의 소스를 관리 1.2 2.0 trunk src Trunk 프로젝트의 중심 – 개발이 이루어지는 디렉토리. 소스 및 문서파일 등 이 위치 docs
  • 4. 2. Branch/Tag 관리 방법 1) Branch/Tag 관리에 사용되는 명령어 - SVN 에는 Branch/Tag 관리를 위한 별도의 명령을 지원하지 않는다. - 이슈가 되는 시점의 파일을 copy명령을 통해 복사하는 방법을 이용한다. - 복사본을 남기고 싶은 상태에 해당하는 폴더로 파일을 이동한다. - 버전업 : tags, 분기점 생성 : branches Ex) 1.0 에서 1.1 로버전업이 되었을 경우 – tags/1.1 이란 폴더를 만들어 파일을 복사 2) Branch/Tag 관리 방법 – 쉘 명령어 이용 svn copy 원본위치저장될위치 Ex) 2.0 버전을 발표할 때, 발표시점의 소스를 남기고 싶은 경우 - svn copy svn://203.236.230.36/trunk svn://203.236.230.36/tags/2.0 Ex) 현재 개발중인 소스를 test 라는 이름으로 따로 관리하고 싶을 경우. - svn copy svn://203.236.230.36/trunk svn://203.236.230.36/branches/test
  • 5. 2. Branch/Tag 관리 방법 3) Branch/Tag 관리 방법 - GUI 툴(Tortois SVN)을 이용 1. 소스폴더(SVN과 연동된) 에서 마우스 오른쪽클릭. 2. TortoiseSVN -> branch/tag 를 선택
  • 6. 2. Branch/Tag 관리 방법 3) Branch/Tag 관리 방법 - GUI 툴(Tortois SVN)을 이용 3. 저장될 경로를 입력. - 버전업 일 경우 : tags - 소스 분기 일 경우 : branches 4. 현재 작업에 대한 메시지를 입력. - 이력 관리를 위해 가급적이면 자세하게 남긴다 Ex) 2.0 발표시점의 소스 5. OK 를 클릭하면 작업이 진행된다
  • 7. 3. 원하는 Branch/Tag 소스를 내려 받는 방법 Branch/Tag 관리 방법 – 쉘 명령어 이용 svn export 원본위치저장될위치 Ex) 2.0 버전으로 tagging 된 소스를 /data/2.0 으로 복사하고 싶을 때 - svn export svn://203.236.230.36/tags/2.0 /data/2.0 Ex) test 라는 이름으로 생성된 소스를 /data/test 로 복사하고 싶을 때 - svn copy svn://203.236.230.36/branches/test data/test
  • 8. 3. 원하는 Branch/Tag 소스를 내려 받는 방법 3) Branch/Tag 관리 방법 - GUI 툴(Tortois SVN)을 이용 1. 소스를 저장할 폴더에서 우클릭 2. TortoiseSVN -> Export 를 선택 *** SVN 과 연동된 폴더에서는 Export 를 하면 안됨. - SVN 연동 폴더에서 Export 할 경우 현재 연결된 SVN 소스를 그대로 내려 받음. (원하는 소스를 선택 할 수 없음.)
  • 9. 3. 원하는 Branch/Tag 소스를 내려 받는 방법 3) Branch/Tag 관리 방법 - GUI 툴(Tortois SVN)을 이용 3. 원하는 저장소를 선택. Ex) ver2.0 의 소스 - svn://……/tags/2.0 4. 저장될 위치를 선택 5. OK 를 클릭하면 작업이 진행된다
  • 10. 4. SVN 을 이용시 지켜야 할 룰 1. Commit 을 할 때 반드시 코멘트를 남긴다. - 수정된 파일 등의 정보를 남겨 변경이력 추적이 용이하도록 한다. - 에러가 발생 할 경우, 언제 어떤 파일이 수정되어 에러가 생긴 것인지 파악하기 쉽다. 2. 출근 후 Update, 퇴근 전 Commit 을 반드시 하도록 한다. - 작업자들간에 동일한 Revision 을 유지하기 위해, Update, Commit 을 습관적으로 한다. 3. Tag 는 버전업이 되는 시점에서, Branch 는 두가지 이상의 버전 비교가 필요할 때 생성한다. - 이외의 경우는 반드시코멘트를 남겨 다른 작업자가 알아보기 쉽도록 한다.
  • 11. 5. 맺음말 SVN용 웹 인터페이스가 있음. - 적용여부를 고려해 볼 필요가 있음. 참고 URL - 피라시스닷컴: http://www.pyrasis.com/main/Subversion-HOWTO#s-5.14.1.1 - KLDP Wiki : http://wiki.kldp.org/wiki.php/SubversionBook