[SVN] TortoiseSVN 로컬 환경 기본 사용법 - (1)

2023. 6. 3. 20:08기술 창고/SVN

728x90
SMALL

최근 Git 말고 SVN 이라는 중앙집중식 형상관리 툴을 알게되어 학습하고 있습니다.

기본적으로 SVN은 TortoiseSVN을 많이들 사용한다고 합니다.

따라서, TortoiseSVN 기본적인 설치 과정과 로컬 환경에서의 사용 방법을 알아보고 정리해보겠습니다.

 

# 추가적으로, 로컬 환경이 아닌 외부와 연동하여 사용하려면 VIsualSVN이라는 프로그램을 이용해야 하는 것 같습니다.

즉, 로컬 환경에서는 VisualSVN 프로그램이 필요없다는 사실!

 

 

(1) TortoiseSVN 설치

https://tortoisesvn.net/downloads.html

 

Downloads · TortoiseSVN

download TortoiseSVN

tortoisesvn.net

 

 

TortoiesSVN 다운로드 페이지에 들어가서 자신의 컴퓨터 환경에 맞는 버전의 프로그램을 설치해줍니다.

 

설치하고 마법사 실행하면 위와 같이 설치 단계들이 나오는데 아무것도 건드릴 필요없이 Next만 눌러서 진행하고 Install 설치해주면 됩니다.

 

 

정상적으로 설치가 완료되었으면 위와 같이 프로그램들이 설치된 것을 확인할 수 있습니다.

 

 

 

(2) 중앙 저장소 생성 및 지정

저장소를 지정해주기 위해 C드라이브에 폴더를 하나 만들었습니다.

 

 

만든 폴더에 오른쪽 마우스 클릭을 하게 되면 설치한 TortoiseSVN 항목이 보입니다.

Create repository here 를 눌러줍시다.

 

 

repository로 지정되는데 성공하게 되고 trunk, branches, tags 폴더 구조를 생성할 것인지 물어봅니다.

- trunk : commit 한 소스코드들이 모여있는 장소.

- branches : 중앙 저장소를 기준으로 개발자들이 별도의 기능을 추가하거나 버그를 수정하거나 하는 작업을 위한 별도의 작업 저장소 환경.

- tags : 중앙 저장소의 스냅샷들.

 

file:///C:/{지정한 폴더 명} 경로를 잘 기억해두고, Create folder structure 를 누르고 OK를 눌러 완료해줍니다.

 

 

repository 지정이 완료되었으면 해당 폴더 내에 위와 같은 폴더 및 파일들이 생성한 것을 확인할 수 있습니다.

 

 

 

(3) 지정한 저장소에 직접 데이터를 넣는 Import 작업

지정 저장소에 직접 데이터를 넣으려면 import 기능을 사용해야합니다.

파일을 이용해서 import를 테스트해봅시다.

 

우선 직접적으로 저장소에 해도 괜찮지만 폴더를 만들어서 관리해주는 것이 좋을 것 같습니다.

임의의 폴더를 만들어줍니다.

 

 

파일로 테스트를 해볼 것이기 때문에 이미지 파일을 넣어주었습니다.

 

 

오른쪽 마우스 클릭을 하고 TortoiseSVN 항목의 import 를 눌러줍니다.

 

 

만들었던 branch1 폴더에 넣은 이미지 파일을 그대로 import 함으로서 파일을 넣어주었다는 것을 명시해주었습니다.

여기서는 그냥 이미지를 넣었던 폴더에 그냥 import를 시켜주었습니다.

(실무에서 이렇게 import 하는것은 되게 쓸데없는 일이라고 생각합니다. 될 수 있는 한 다른 폴더에 파일을 넣어줄 때 import를 사용하는 것이 일반적입니다. ) 

다른 폴더에 import 하여 파일을 넣어줄 수 있습니다.

Import message 에 코멘트를 달 수도 있습니다.

 

 

Path 내용을 보면 branch1 폴더에 있는 파일을 그대로 branch1 폴더에 성공적으로 import 시켰다고 나옵니다.

import 작업 완료입니다.

 

 

 

(3) 특정 저장소에 있는 파일을 다른 저장소에 불러오는 CheckOut 작업

특정 저장소에 있는 파일들을 다른 특정 장소에 불러올 수 있습니다.

CheckOut 이 바로 그러한 기능을 지원해줍니다.

 

 

중앙 저장소에서 파일을 불러와서 저장시킬 폴더를 따로 하나 만들어줍니다.

 

 

만든 폴더에 들어가서 오른쪽 마우스 클릭 -> SVN CheckOut 을 누릅니다.

URL of repository 부분에 불러올 파일이 있는 저장소 경로를 잡아줍니다.

CheckOut directory 부분에 checkout 하여 이동 후 파일을 불러와서 넣을 저장소 경로를 넣어주고 OK 를 눌러줍니다.

 

# CheckOut directory 부분에 만들어지지 않은 폴더를 임의로 경로를 잡아주면 해당 폴더가 새로 생성되고 그 곳에 파일이 저장되게 됩니다.

 

 

branch1 폴더에 있는 내용을 branch2 저장소로 Updating 하는 작업 내용을 볼 수 있습니다.

또한 그 안에 있는 테스트 이미지 파일을 추가했다는 내용도 볼 수 있습니다.

 

 

정상적으로 branch2 저장소 내에 파일이 불러와졌습니다.

작업이 정상적으로 수행되면 .svn 폴더도 생깁니다.

 

# 작업이 정상적으로 수행되었으면 폴더나 파일에 위의 이미지와 같이 초록색 체크가 생기게 됩니다.

방금 막 폴더에 파일을 넣었으면 초록색 체크가 나오지 않습니다.

그 파일을 다른 폴더에서 불러오거나 하는 작업들을 해야 초록색 체크가 나옵니다.

 

 

 

(4) 작업한 내용을 저장소에 등록하는 Commit 작업

git 과 같이 작업한 내용들을 commit 을 통해 반영시킬 수 있습니다.

 

새로운 이미지 파일을 추가해주고 추가한 내용을 중앙 저장소에 Commit 하여 반영주겠습니다.

오른쪽 마우스 클릭 -> SVN Commit 을 눌러줍니다.

 

 

마찬가지로 코멘트를 달 수 있고, 아래에 어떤 추가 내용을 Commit할 것인지 나옵니다.

체크하여 선택하고 OK를 눌러줍니다.

이 때 branch1 중앙 저장소에 Commit 이 된다고 최상단에 내용이 나오고 있는 것을 확인해줍시다.

 

 

branch1 으로 Commit이 완료되었다는 내용을 확인할 수 있습니다.

또한 어떠한 파일이 Commit 되었는지에 대한 내용도 확인할 수 있습니다.

 

 

Commit 이 완료가 되면 앞서 말했던 것처럼 초록색 체크가 나오게 됩니다.

정상적으로 작업이 수행되었다는 뜻입니다.

 

 

branch1 폴더로 가서 작업이 반영되었는지 확인해줍니다.

그런데 Commit 된 공원 PC 이미지 파일이 보이지 않습니다.

 

 

당황하지 않아도 괜찮습니다.

Repo-browser 를 통해 Commit된 내용을 확인할 수 있습니다.

오른쪽 마우스 클릭 -> TortoiseSVN -> Repo-browser 를 선택해줍니다.

 

 

branch1 폴더에 Commit 한 이미지 파일이 정상적으로 반영되었습니다!

 

 

 

(5) 최신 버전의 작업 내용을 불러오는 Update 작업

SVN 에도 git 처럼 최신 작업 내용을 불러오는 pull 과 같은 기능을 지원해주는 Update 작업이 있습니다.

 

 

기존에 다른 CheckOut 했었던 저장소가 존재한다면 그곳에 Update 하여 불러올 수 있습니다.

반드시 저장소로 인정된 폴더에서만 가능합니다. Commit도 마찬가지로 저장소로 인정된 폴더에서 가능합니다.

위의 사진에서는 branch3 라는 폴더를 만들어 미리 CheckOut 하여 저장소로 인정받도록 해두었습니다.

 

 

branch3 폴더 내부로 들어가게 되면, 인정받은 저장소라는 것을 인증하는 .svn 폴더가 존재합니다.

오른쪽 마우스 클릭 -> SVN Update 를 눌러줍니다.

 

 

중앙 저장소인 branch1 폴더에 있는 내용을 Update 시켰다는 내용을 확인할 수 있습니다.

공원 PC, 테스트 이미지 파일들이 불러와졌습니다.

 

 

Update 가 완료되었으면 위와 같이 최신 버전의 작업 내용, 파일들이 불러와진 것을 확인할 수 있습니다.

Update 완료되었네요 ㅎㅎㅎ

 

# 항상 어떠한 작업을 수행하기 이전에 Update 하여 본인이 작업하고 있는 저장소를 최신화 시키고 Commit 해주도록 합시다. 안그러면 충돌이 자주 발생하게 됩니다;;

선 Update -> 후 Commit

 

 

 

 

이렇게 해서 기본적인 TortoiseSVN 작업들을 몇 가지 정리해보았습니다.

다른 작업 기능들도 있어서 이후에 계속 사용해보고 공부하면서 정리해나가겠습니다!

728x90
반응형
LIST