11

Click here to load reader

Svn

Embed Size (px)

DESCRIPTION

SVN Usage

Citation preview

Page 1: Svn

IntroductionSVN Cycle

SVN UsageSVN Tools

Conclusion and precautions

협업을 위한 SVN 사용법

th!nkh@ck-hackartist

cafe.thinkhack.org

September 20, 2014

th!nkh@ck-hackartist 협업을 위한 SVN 사용법

Page 2: Svn

IntroductionSVN Cycle

SVN UsageSVN Tools

Conclusion and precautions

1 Introduction

2 SVN Cycle

3 SVN UsageSetting default editor for SVNChecking into a repositoryUpdating to the specified versionCommitting new versionDeleting from the repository

4 SVN Tools

5 Conclusion and precautions

th!nkh@ck-hackartist 협업을 위한 SVN 사용법

Page 3: Svn

IntroductionSVN Cycle

SVN UsageSVN Tools

Conclusion and precautions

Introduction

SVN 이란?

Subversion 으로 형상관리툴이라고 부름.

소스코드를 서로 공유하는 목적

소스코드의 버전을 관리하기 위한 목적

SVN 필요성

여러 사람이 공동개발을 진행할 때 가장 문제점은 무엇인가??

어떻게 소스를 공유하여 다른 사람들이 개발한 내용을 적용하여 테스트

할 것인가??

개개인이 개발하는 코드에 대해서 다른 사람들의 코드와 정상적으로

상호동작을 하는가??

누군가의 수정으로 인해서 프로젝트 전체 오류가 발생했을 시에 어떻게

해결할 것인가??

th!nkh@ck-hackartist 협업을 위한 SVN 사용법

Page 4: Svn

IntroductionSVN Cycle

SVN UsageSVN Tools

Conclusion and precautions

SVN Cycle

th!nkh@ck-hackartist 협업을 위한 SVN 사용법

Page 5: Svn

IntroductionSVN Cycle

SVN UsageSVN Tools

Conclusion and precautions

Setting default editor for SVNChecking into a repositoryUpdating to the specified versionCommitting new versionDeleting from the repository

Setting default editor for SVN

Setting SVN Editor temporarily

In Bash shell

export SVN EDITOR=emacs

Setting Editor permanently

In /.bash profile

Add ”export SVN EDITOR=emacs”

th!nkh@ck-hackartist 협업을 위한 SVN 사용법

Page 6: Svn

IntroductionSVN Cycle

SVN UsageSVN Tools

Conclusion and precautions

Setting default editor for SVNChecking into a repositoryUpdating to the specified versionCommitting new versionDeleting from the repository

Checking into a repository

If you want to check into a repository with authentication

Example

# svn checkout https://svn.thinkhack.org /home/user/svn –username user1Enter password of ”user1” : ******

th!nkh@ck-hackartist 협업을 위한 SVN 사용법

Page 7: Svn

IntroductionSVN Cycle

SVN UsageSVN Tools

Conclusion and precautions

Setting default editor for SVNChecking into a repositoryUpdating to the specified versionCommitting new versionDeleting from the repository

Updating to the specified version

Updating to the head version

# svn update /home/user/svn

Updating to a specified version

This example explain retrieving to revision 15.# svn update /home/user/svn -r 15

th!nkh@ck-hackartist 협업을 위한 SVN 사용법

Page 8: Svn

IntroductionSVN Cycle

SVN UsageSVN Tools

Conclusion and precautions

Setting default editor for SVNChecking into a repositoryUpdating to the specified versionCommitting new versionDeleting from the repository

Committing new version

Committing modified files

# svn commit /home/user/svn

Committing new files

# svn add /home/user/svn/new folder# svn commit /home/user/svn/new folder

th!nkh@ck-hackartist 협업을 위한 SVN 사용법

Page 9: Svn

IntroductionSVN Cycle

SVN UsageSVN Tools

Conclusion and precautions

Setting default editor for SVNChecking into a repositoryUpdating to the specified versionCommitting new versionDeleting from the repository

Deleting from the repository

Deleting files from version control

# svn delete /home/user/svn/new folder# svn commit /home/user/svn

th!nkh@ck-hackartist 협업을 위한 SVN 사용법

Page 10: Svn

IntroductionSVN Cycle

SVN UsageSVN Tools

Conclusion and precautions

SVN Tools

Windows

TortoisSVN

Mac OS

SCPlugin : Non-Commercial, Finder Integrated

SmaterSVN : Commercial, Finder Integrated & Standalone

Versions : Commercial, Standalone

Linux

SmaterSVN : Commercial, Nautils Integrated & Standalone

RapidSVN : Non-Commercial, Standalone

th!nkh@ck-hackartist 협업을 위한 SVN 사용법

Page 11: Svn

IntroductionSVN Cycle

SVN UsageSVN Tools

Conclusion and precautions

Conclusion and precautions

Conclusion

소스공유가능

Revision 이 가능

Revision 그래프 또는 로그를 통해서 diff 기능도 제공

Precautions

최신버전에서 작업하지 않을 경우 충돌 가능성이 있음

항상 작업하기 전에 update를 한 다음에 작업을 수행하여야 함

여러 사람의 하나의 파일을 수정하는 경우 충돌을 피하기 어려움

각 개발자의 포지션 및 수정범위가 명확해야 함

Global 파일을 관리해줄수 있는 PM이 있어야 함Global 파라미터는 모두 PM에게 요청하여 수정을 하여야 함

th!nkh@ck-hackartist 협업을 위한 SVN 사용법