[SVN] SVN 이란?

2023. 6. 3. 18:52기술 창고/SVN

728x90
SMALL

SVN

SVN은 SubVersion 단어의 줄임말로 중앙집중관리식 형상관리 소스 관리 툴입니다.

각각의 개발자들이 본인의 코드 변경 사항을 하나의 중앙 저장소 (Center Repository) 에 commit 하는 방식으로 운영합니다.

즉, 로컬 PC에서 커밋 시 중앙 저장소에 바로 반영되고 중앙 저장소에 있는 내용들을 다른 로컬 PC에 업데이트 시킬 수 있습니다.

이해가 직관적이라는 장점이 있지만 중앙 저장소에 문제가 발생될 경우에 서비스 자체가 중단되는 현상이 발생할 수 있습니다.

CVS라고 하는 형상관리 툴이 저장소의 파일들의 이름을 변경할 수 없는 한계, 디렉토리의 이동이나 이름 변경을 지원하지 않는 한계, 유니코드로 된 파일 이름을 제한적으로만 지원하는 한계점들을 가지고 있어 이를 보완하기 위한 형상관리 툴입니다.

 

이와 다르게 모두가 흔히 사용하고 가장 많이 알려진 Git 은 중앙 저장소 (Center Repository)를 통째로 복사한 별도의 branch repository를 각 개발자들이 가지고 변경 사항을 반영시키며, 최종적으로 이 변경사항을 중앙 저장소에 반영하는 Pull Request 를 요청하면서 운영됩니다.

 

 

SVN 장점

  • 원자적인 커밋을 지원하므로 다른 사용자의 커밋과 얽히지 않습니다. 롤백도 가능합니다.
  • 파일과 디렉토리의 삭제, 이동 이름 변경, 복사같은 기능들을 지원합니다.
  • 소스 파일 이외에 이진 파일(텍스트 파일이 아닌 컴퓨터 파일) 도 효율적으로 저장 가능합니다.
  • 디렉터리도 버전 관리를 할 수 있습니다.
  • 저장소의 크기에 상관없이 일정한 시간 안에 가지치기나 태그를 할 수 있습니다.
  • 처리 속도가 상대적으로 빠릅니다.

 

 

SVN 단점

  • 소스코드는 merge가 가능하지만 이진파일은 어느 한쪽을 버릴 수 밖에 없습니다.
  • 개별 개발자만의 개발 이력을 가질 수 없습니다.
  • 잦은 커밋이 발생하면 리비전 번호가 크게 증가할 수 있습니다.
  • 충돌이 일어날 확률이 높습니다.

 

 

[도움받은 글]

https://handhand.tistory.com/248

 

SVN 을 이용한 형상관리 PART.1 - SVN 이란?

SVN 을 이용한 형상 관리 📌 svn? git? 비교적 최근에 개발을 접한 개발자들에게는 생소한 SVN 에 대해서 알아보는 포스트입니다. 현재 일하고 있는 회사에서는 보안성 이슈로 한동안 Git 을 사용하

handhand.tistory.com

 

https://truecode-95.tistory.com/18

 

[SVN] SVN이란 ? 장점 , 단점 , 용어 정리

회사에서 소스를 형상관리할때 svn을 자주 사용하는데 svn에 대해 알아보자. 1. SVN이란? SVN은 SubVersion의 줄임말로 중앙집중관리식 형상관리 소스 관리 툴이다. 로컬 pc에서 커밋 시 중앙 저장소에

truecode-95.tistory.com

 

728x90
반응형
LIST