Developer's Development

[개발환경] SVN (Subversion) 본문

개발환경

[개발환경] SVN (Subversion)

mylee99 2022. 7. 31. 15:38
형상 관리의 일종. (CVS, SVN, Git 등)

SVN : 중앙 집중 관리식 형상관리 소스 관리 툴.
- git에 비해 간편하고 어렵지 않으며, 버전 관리에 최적화된 기능이 있지만 소스의 충돌 위험이 높다.


※ 명령어 정리 (쓰는 것만)

1. checkout

- 원격 저장소에서 최신 버전의 소스를 최초로 받아오는 것. (=git clone)
egovframework : Windows > Show View > Other.. → [SVN Repositories] Open
- 최초 접속 시 URL, (Authentication) User, Password를 알아야 Repository 접근이 가능함.
- 해당 SVN에 접근 완료 후 프로젝트 목록이 뜨면, checkout할 프로젝트 우클릭 > Chek Out
* 다른 프로젝트를 내 로컬에 끌어올 땐 실행 전에 Maven Update를 진행한다.
그래도 뭔가 실행되지 않을 땐, <Repository 삭제> 후 다시 Update해보기. (로컬 PC의 .m2 > repository 폴더)
* checkout 후 SVN과의 연결을 끊고 싶을 땐, workspace의 해당 프로젝트 폴더에서 .svn 폴더를 삭제한다.

2. update

- 로컬 저장소에 있는 파일들을 원격 저장소의 최신 버전으로 받아오는 것. (=git pull)
egovframework : 프로젝트 우클릭 > Team > Synchronize with Repository > 다시 프로젝트 우클릭 후 update

3. commit

- 로컬 저장소의 변경된 내용을 서버로 전송하는 것. (=git commit + git push)
- revision 수가 올라가며, commit 전에는 update를 실행해 최신 소스로 변경하고 컴파일이 성공했을 경우에 해야 함!
egovframework : 프로젝트 우클릭 > Team > Synchronize with Repository > 다시 프로젝트 우클릭 후 commit.
* commit 할 때 Comment 입력할 것 : [이름] 변경된 내용.
* 제외시킬 것 : Setting 관련(DB 설정, globals.properties 등), console에 log 찍은 것도 지우기.

4. add

- 로컬에서 작업한 프로젝트를 서버에 최초로 등록하는 것.
egovframework : 프로젝트 우클릭 > Team > Share Project (SVN에 추가하고 commit하기)

* 로컬의 소스와 서버의 소스 싱크 맞추기
egovframework : 프로젝트 우클릭 > Team > Synchronize with Repository
* 해당 프로젝트의 SVN 기록 보는 법
egovframework : 프로젝트 우클릭 > Team > Synchronize with Repository > Show History
* 기타
- Override and Commit : 서버를 무시하고 로컬의 소스를 서버에 덮는다.
- Override and Update : 로컬을 무시하고 서버의 소스를 로컬에 덮는다.
- Revert : 로컬의 작업 내용을 취소하고 서버의 소스를 덮는다.

Comments