멍발자의 개발
SVN 사용법 본문
입사한 회사에서 SVN을 써서 사용하는 방법을 알아보려고 한다.
SVN = Subversion의 약자
- 버전 관리 시스템의 한 종류고 서버 + 클라이언트 모델을 따른다.
Subversion 클라이언트
- Command Line으로도 조작이 가능하다.
- Tortoise SVN : 많이 사용하는 클라이언트 (우리 회사에서 아마 이걸 쓰는듯 하다.)
이클립스 마켓 플레이스에서 SVN 검색해서 설치
용어 정리
Repository
- 파일이 저장되는 원격 저장소
Revision
- Merge등의 기준이 될 수 있다.
- 가장 최근의 revision은 HEAD Revision이다.
- 저장소 내 변경이 발생하면 증가
- 0부터 1씩 증가한다.
Working Copy
- 로컬 PC에 있는 보사본, Repository에서 Checkout을 통해 내려받은 것이다.
Checkout
- Repository(원격 저장소)의 파일을 로컬 저장소(Working Copy)로 내려받는다.
Add
- Local 파일을 SVN이 관리하는 파일로 등록한다.
Update
- Repository와 비교하여 최신 버전의 상태로 갱신한다.
- 서브버전에서 Merge를 할 수 없으면 Conflict 상태가 된다.
Commit
- Local 파일의 변경을 Repository에 저장한다.
- 작업이 완료되면 Revision이 증가한다.
Trunk
- 운영중인 안정화된 버전의 소스가 보관되는 디렉토리
Branches
- 신규 기능 개발, 부가적인 작업, 실험 작업을 위한 소스가 저장되는 디렉토리
- 작업이 완료되면 Trunk 디렉토리로 병합
Tags
- 특정 시점의 소스를 보관하기 위해 사용하는 디렉토리
Synchronize with Repository
- commit이나 update 전에 항상 해주는 습관
- 로컬소스와 서버소스의 동기화
Override and Commit
- 충돌(conflict) 무시, 로컬 소스를 서버에 덮기
Override and Update
- 충돌(conflict) 무시, 서버 소스를 로컬에 덮기
Show history
- commit 이력 확인 가능(수정한 사람, 일자, 변경된 소스)
Compare with each ohter
- 소스끼리 비교해서 바뀐 점 확인하기
get content
- 해당 소스를 로컬에 덮어씌움
'코딩테스트 > 고뇌의 순간들' 카테고리의 다른 글
코드 분석 공부 (1) (0) | 2022.11.01 |
---|---|
협업을 위한 Github (2) | 2022.09.20 |
오류 해결) 톰캣 오류 실행 (0) | 2022.07.12 |
Git과 GitHub (0) | 2022.05.28 |
오류 해결) IO 오류: The Network Adapter could not establish the connection (0) | 2022.05.26 |