관리 메뉴

투덜이 개발자

Subversion(SVN) 개념 및 명령어 정리 본문

OS/Linux

Subversion(SVN) 개념 및 명령어 정리

엠투 2022. 1. 27. 00:44
반응형

Subversion(SVN) 개념 및 명령어 정리

📃 SVN 개념

 

SVN 사용흐름
  • 최초로 서버 소스를 checkout 한다
  • 소스를 수정한다
  • commit 할 파일을 add 한다
  • update 를 통해서 저장소에 새로운 파일이 없는지 확인한다
  • update 과정에서 conflict 가 일어나면 이를 해결한다(수정후, resolve 해주어야함)
  • commit 을 해서 저장소에 파일을 등록한다

 

  • repository(저장소)

 

  • trunk

 

  • branch

 

  • tag

 

 

📃 SVN 명령어 정리

  • checkout[co]

 

# sandbox 디렉토리에 체크아웃받음
svn checkout[co] svn://127.0.0.1/TestRepo1

# source 디렉토리에 체크아웃받음
svn checkout[co] svn://127.0.0.1/TestRepo1 LocalRepo1

 

 

  • import

 

svn import sampledir svn://127.0.0.1/TestRepo1/trunk

 

 

  • export

 

svn export svn://127.0.0.1/TestRepo1

 

 

  • update[up]

 

svn update[up]

#현재 작업 내용을 리비전 1로 갱신(최신 리비전보다 이전으로 되돌리는 것도 가능)
svn update[up] -r 1

 

 

  • add

 

svn add main.c

 

 

  • commit[ci]

 

svn commit[ci] -m "수정사항에 대한 메시지 입력"

 

 

  • status[stat, st]

 

svn status[stat, st] main.c

 

 

  • revert

 

#로컬 저장소 복사본 main.c에 가했던 변경들을 모두 취소함
svn revert main.c

 

 

  • diff[di]

 

svn diff[di]

#저장소의 내용과 현재 작업 내용 중 main.c 파일이 차이를 확인
svn diff[di] main.c

#리비전 1과 2의 차이를 확인
svn diff[di] -r 1:2

#리비전 1과 현재 작업중인 main.c의 차이를 확인
svn diff[di] -r 1 main.c

#리비전 2와 현재 작업중인 디렉토리의 파일내용 차이를 확인
svn diff[di] -r 2

 

 

  • log

 

svn log

#리비전 4의 변경사항 로그 보기
svn log -r 4

#리비전 4의 test.c 파일의 변경사항 로그 보기
svn log -r 4 test.c

#리비전 4 ~ 5의 변경사항 로그 보기
svn log -r 4:5

 

 

  • mkdir

 

svn mkdir newdir

 

 

  • delete[del, rm, remove]

 

svn delete[del, rm, remove] newfile.c

 

 

  • move[mv]

 

svn move[mv] test.c /src/

 

 

  • rename[ren]

 

svn rename[ren] test.c sample.c

 

 

  • list[ls]

 

svn list[ls]
svn list[ls] svn://127.0.0.1/TestRepo1/trunk

 

 

  • blame[praise, annotate, ann]

 

svn blame[praise, annotate, ann] test.c
svn blame[praise, annotate, ann] -r 4 test.c

 

 

  • switch[sw]

 

svn switch[sw] --relocate [이전주소] [새로운주소]

 

 

  • info

 

svn info

# 로컬 저장소 정보 확인
svn info /svn_repos/LocalRepo1

# 원격 저장소 정보 확인
svn info svn://127.0.0.1/TestRepo1

 

 

 

✏️ 참고
Subversion Book(영문)
http://svnbook.red-bean.com/

SVN에 대한 상세한 설명 확인
http://pyrasis.com/main/Subversion-HOWTO

SVN 명령어 관련
https://stormaa.tistory.com/122

svn2git을 이용해 SVN에서 Git(bitbucket)으로 마이그레이션하기
https://jundol.kr/130

생활코딩 - 서브버전이란?
https://www.opentutorials.org/course/305/1962

Subversion 소개 및 사용법 http://wiki.gurubee.net/pages/viewpage.action?pageId=26739556

SVN 이란?
https://mmungkyu.tistory.com/4, https://na27.tistory.com/211

 

 

 

✏️  추가
https://tortoisesvn.net/


TortoiseSVN란?
  • 서브버전의 클라이언트로 저장소
  • 변경된 파일을 저장
  • 변경이력을 열람하는 등의 역할
  • 윈도우즈에서 사용할 수 있는 GUI 프로그램
  • 윈도우 탐색기에 플러그인의 형태로 붙어, 윈도우 탐색기와 결합되어 사용됨

https://hellowoori.tistory.com/57

 

 

Subversion(SVN) 개념 및 명령어 정리

📃 SVN 개념 SVN 사용흐름 최초로 서버 소스를 checkout 한다 소스를 수정한다 commit 할 파일을 add 한다 update 를 통해서 저장소에 새로운 파일이 없는지 확인한다 update 과정에서 conflict 가 일어나면

hellowoori.tistory.com

 

반응형