SVN 주요 명령어들

 

1. SVN 주요 명령어

 

1. 기존 프로젝트 svn 올리기

>svn import {기존프로젝트} {Reposiroty URL} –m “메시지 내용

>svn import testSVN https://danlee/svn/practiceSVN -m “기존 프로젝트 SVN import ”

2.프로젝트 CheckOut

>svn co {SVN주소} {checkout할 대상}

>svn co https://danlee/svn/practiceSVN .

3. 소스 삭제하기

>svn delete {SVN에서 삭제할 파일명}

>svn delete test.txt

4. 소스 커밋하기

>svn  commit {커밋할 파일} –m “메시지 내용

>svn commit test.txt –m “테스트 파일

5. svn 변경 상태 체크

>svn status

6. svn 버전 확인

>svn –version

7. svn repository url 등 정보 확인

>svn info

8. 기존 소스에 새로운 파일이나 폴더 추가

>svn add {파일명}

>svn add test.txt

9. svn log 확인

>svn log {파일명 or 폴더명}

>svn log main.c

프로젝트 전체 로그

>svn log {Repository 주소}

>svn log https://danlee/svn/practiceSVN

10. 서버 주소 변경

>svn switch –relocate {oldURL} {newURL}


11.
svn 명령어 종류 및 설명

>svn help

 

2. Git vs SVN 명령어 비교

그리고 SVN과 Git을 사용하다보면 햇깔릴때가 있는데 보기쉽게 표로 정리!!

조작

Git

SVN

저장소 복제

git clone

svn checkout

커밋

git commit

svn commit

커밋의 상세 내용

git show

svn cat

상태 확인

git show

svn status

변경 내용 확인

git diff

svn diff

로그 확인

git log

svn log

추가

git add

svn add

이동

git mv

svn mv

삭제

git rm

svn rm

변경 취소

git reset

svn revert

* 브랜치 작성

git branch

svn copy

브랜치의 전환

git checkout

svn switch

병합

git merge

svn merge

태그 작성

git tag

svn copy

변경 사항 업데이트

git pull / git fetch

svn update

* 원격 저장소에 반영

git push

svn commit

무시할 파일 목록

.gitignore

.svnignore

* 브랜치 : svn에서 브랜치와 태그는 구조상 동일, Git에서는 branch, tag 의미가 다름

* 원격 저장소반영 : svn에는 원격저장소 개념이 없기 때문에 commit 하면 server 반영됨

'IT > SVN(Subversion)' 카테고리의 다른 글

SVN Repository 만들기  (0) 2019.09.26
SVN 입문  (0) 2019.09.26

Visual SVN Server로 Repository 만들어보기

 

사실 Create Repository 누르고 다음다음 누르면 생성이 되기때문에 따로 설명할것은 없지만,
각 옵션이 무엇을 의미하는지 정리하겠습니다.

 

 

1. Create Repository

우선 사진 1과 같이 Create New Repository를 클릭하면 Repository를 생성할 수 있습니다.

사진 1. Create Repository

 

 

 

 

2. Repository Type

Create New Repository를 클릭하면 나오는 사진 2와 같이 Repository Type 선택하기창이 나타납니다.

사진 2. Repository Type

  • FSFS (Fast Secure File System) : 표준 Subversion Repository로 기본적으로 사용하는 저장소 입니다.
  • VDFS (VisutalSVN Distributed File System) : 분산 파일 시스템과 유사한 형태를 지니며 특징은 다음과 같습니다.
     - Master / Slave 형태의 아키텍처로 구성
     - Commit할 경우 Master Server로 적용된 후 Slave Server로 자동 복제 됨
     - Slave Server로도 Commit 가능하며, 이 경우에 동이에 Master Server로도 자동 Commit 됨

▶ Distributed VDFS는 FSFS repository와 기능적으론 동일합니다. 그렇기 때문에 서버 구성을 어떻게 할 것인가에 따라 FSFS / VDFS를 선택하면 됩니다.

 

 

 

3. Repository Structure

Repository Type을 선택한 후에는 사진 3과 같이 Repository Structure를 선택해야 합니다.

사진 3. Repository Structure

 

이 두가지의 차이는 간단합니다. 하나의 Repository에 하나의 프로젝트를 관리하는가, 여러개의 프로젝트를 관리하는가에 따라 선택하면 됩니다.

  • Empty repository : Standard Project로, 한 개의 Repository에 여러 Project를 관리할 수 있는 구조로 Repository를 생성합니다.
  • Single-Project Repository : 한 개의 Repository에 하나의 Proeject를 관리할 수 있는 구조로 Repository를 생성합니다.

 

 

 

4. Repository Access Permissions

마지막 권한 설정입니다. 크게 설명할 것 없이, 작성되어 있는 그대로 원하는 것을 선택하여 생성하면 됩니다.

사진 4. Repository Access Permissions

 

  • Nobody has access : 아무나 접근 가능
  • All Subversion users have Read/Write access : SVN에 등록된 User들 접근 가능
  • Customize Permissions : 커스터마이징에 따라 접근 가능

 

 

5. Customize Permissions

Custom... 을 클릭하여 원하는 그룹 또는 계정마다 권한을 부여할 수 있는 옵션 입니다.

사진 5. Customize Permissions

 

여기까지 하면 SVN Repository가 생성 됩니다!

 

 

6. 생성 후 확인

생성이 완료되면 SVN Repository URL을 확인할 수 있습니다. 
SVN은 http,https,svn 프로토콜을 지원합니다.

사진 6. Repository URL 확인

 

이후 접근할 수 있는 계정을 사진 7과 같이 생성하면 해당 Repository로 접근 가능합니다.

사진 7. User 생성

 

웹 주소에 URL을 입력하면 사진 8과 같이 정상적으로 동작함을 확인할 수 있습니다.

사진 8. URL Repository 접근

 

 

'IT > SVN(Subversion)' 카테고리의 다른 글

SVN Shell 주요 명령어, Git 명령어 비교  (0) 2019.09.26
SVN 입문  (0) 2019.09.26

요즘 IT 회사들은 주로 Git을 많이 사용하지만, 형상관리 툴로 SVN도 많이 사용합니다. 물론 SI업체들은 SVN을 대체로 많이 사용합니다.

그래서 오늘은 SVN(Subversion)에 관해서 기본적인 개념을 정리하도록 하겠습니다!
(아래 SVN 개념들은 아파치에서 무료로 제공하는 SVN Book을 참고하여 정리했습니다)

 

 

1. SVN 개념

 

1.1 Repository

Repository는 저장소 입니다.  SVN은 중앙관리 방식으로 Repository를 생성하면, Client가 Repository에 연결해서 내려받아 Read/Write하는 방식입니다. (그림 1 참고)

 

 

1.2 충돌방지 LOCK

SVN의 특징 중 하나는 Lock 시스템입니다. 현재 작업중인 파일들은 다른사람이 사용하지 못하게 Lock을 걸어두어 
여러 사람들이 동시에 수정하여 발생하는 문제를 방지할 수 있습니다.

그림 2. SVN Lock System

 

1.3 Basic Work Cycle

그림 3을 참고하여 SVN의 기본 Cycle을 이해한다면 SVN 사용의 이해는 크게 무리가 없을 것 입니다.

 

그림 3. SVN basic Work Cycle

 

1.4 SVN 관리Tool

SVN은 관리 툴은 VisualSVNServer.msc, VisualSVNShell.exe을 통해 관리가 가능합니다.
SVN Server 관리 툴은 VisualSVNServer.msc 이며 https://www.visualsvn.com/server/download/ 에서 다운 받을 수 있습니다.

사진 1. VisualSVNServer.msc

 

물론 Linux의 경우 쉘로 관리하며, Windows에서도 VisualSVNShell.exe을 통해 쉘로 관리할 수 있습니다.
VisualSVNShell.exe은 VisualSVNServer를 설치하면 폴더내에 같이 설치 됩니다.

사진 2. VisualSVNShell.exe

 

SVN을 바로 사용하기 위해서 알아야 할 가장 기본적인 내용과 사용 Tool에 관해 정리했습니다.
용어 정리와 Command들은 나중에 정리하겠습니다!!

'IT > SVN(Subversion)' 카테고리의 다른 글

SVN Shell 주요 명령어, Git 명령어 비교  (0) 2019.09.26
SVN Repository 만들기  (0) 2019.09.26

+ Recent posts