출처 : http://www.gurubee.net/pages/viewpage.action?pageId=1507893&
이 문서는 오라클클럽에서 작성하였습니다.
Repository(저장소) | 모든 프로젝트의 프로그램 소스들이 이 저장소 안에 저장된다. |
Check Out (체크아웃) | 저장소에서 소스를 받아오는 것이다. |
Commit(커밋) | 개발자가 소스를 수정, 파일 추가, 삭제 등을 한 뒤 저장소에 갱신하는 것이다. |
커밋을 하면 CVS에서는 수정한 파일의 리비전 증가 SVN의 경우는 전체 리비전이 증가한다. | |
Update(업데이트) | 체크아웃을 해서 소스를 받았더라도 다른 사람이 커밋을 하면 소스가 수정되어 있다. |
업데이트를 하여 저장소에 있는 최신 버전의 소스를 가져온다. 바뀐 부분만 받는다. | |
Revision(리비전) | 소스 파일을 수정하여 커밋하면 일정한 규칙에 의해 숫자가 증가한다. |
Import (임포트) | 아무것도 들어있지 않은 저장소에 맨 처음 소스를 넣는 작업이다. |
Export (익스포트) | 버전 관리 파일들을 뺀 순수한 소스 파일을 받아올 수 있습니다. 오픈소스 프로젝트의 경우 소스를 압축하여 릴리즈 할 때 사용한다. |
Tag(태그) | 꼬리표라고 파일 또는 프로젝트에 기억하기 쉬운 이름을 부여하는 기능. |
Branch(브랜치) | 나무줄기(trunk)에서 뻗어져 나온 나무 가지를 뜻함. |
trunk 디렉토리에서 프로그램을 개발하다 보면 큰 프로젝트에서 또 다른 작은 분류로 빼서 따로 개발해야 할 경우가 생긴다. | |
Trunk(가지) | 프로젝트에서 가장 중심이 되는 디렉터리이다. |
소스파일과 디렉터리가 들어간다. | |
Merge(머지) | 브랜치, 가지 둘 다 수정할 경우 브랜치 수정분을 가지에 병합하는것이다. |
svn-repos | +--sesame | +--branches | | | +--src | +--tags | | | +--0.0 | +--trunk | +--doc
C:\>mkdir c:\svn-repos
C:\>svnadmin create c:\svn-repos
C:\tmpdir>svn import -m "importing sesame project " . file:///c:/svn-repos/sesame/trunk
C:\>mkdir c:\work
C:\work>svn co file:///c:/svn-repos/sesame/trunk sesame
C:\work\sesame>svn status Day.txt
C:\work\sesame> svn commit -m "Client wants us to work on weekends"
C:\work\sesame> svn log --verbose Day.txt
C:\work>svn co file:///c:/svn-repos/sesame/trunk aladdin
C:\sesame>svn commit -m "Customer wants more numbers"
C:\aladdin>svn status --show-updates
C:\aladdin>svn diff -rHEAD Number.txt
C:\aladdin>svn update
– aladdin 의 Number.txt 을 SIX 로 수정
– sesame 의 Number.txt 을 ZERO 로 수정
C:\aladdin>svn commit -m "Make 'siz' important"
C:\sesame>svn commit -m "Zero is changing"
C:\sesame>svn update
C:\sesame>svn commit -m "Zero is changing"
C:\aladdin>svn update
G는 병합했음을 뜻함
U는 그냥 덮어썼을 때
-- 서버 시작 c:\>start svnserve --daemon --root c:\svn-repos
![]() |
참고1. 인증실패라고 나올 경우
|
-- 디렉터리 만들기 C:\work>svn mkdir -m " Creating branches directrocd ry" svn://74be304f5aa14f4./sesame/branches -- 만든 디렉터리에 새로운 branche 복사 C:\work>svn copy -m "Creating release branch for 1-0" svn://74be304f5aa14f4./sesame/trunk svn://74be304f5aa14f4./sesame/branches/RB-1.0 -- Branche에서 꺼내오기 C:\work>svn co svn://74be304f5aa14f4./sesame/branches/RB-1.0 rb1.0 -- 기존 작업본을 Branche로 전환 C:\ssame>svn switch svn://74be304f5aa14f4./sesame/branches/RB-1.0 -- 작업본을 다시 trunk로 전환 C:\sesame>svn switch svn://74be304f5aa14f4./sesame/trunk
-- tags 디렉터리 만들고 그 아래에 릴리스 가지 디렉터리를 복사한다. C:\work>svn mkdir -m "Creating tags Directory" svn://74be304f5aa14f4./sesame/tags C:\work>svn copy -m "Tag release 1.0.0" svn://74be304f5aa14f4./sesame/branches/RB-1.0 svn://74be304f5aa14f4./sesame/tags/REL-1.0.0 -- 새로운 작업본으로 꺼내온다. C:\work>svn checkout svn://74be304f5aa14f4./sesame/tags/REL-1.0.0 client-fix -- common을 가리키도록 전환 C:\work>cd client-fix C:\client-fix>svn switch svn://74be304f5aa14f4./sesame/branches/RB-1.0/common common
<Location /svn-repos> DAV svn SVNPath C:\svn-repos </Location>
SSISO Community