ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • SVN 사용하기 (CLI, svn branch)
    개발 2023. 3. 24. 10:27

     

     

    Git만 사용해보다 이번에 투입된 프로젝트에서 처음으로 SVN을 사용해봤더니 처음엔 낯설고, 왜 바로 원격으로 바로 올라가는지 등 다소 난해했다. 오히려 어렵게 생각했던 것 같은데, 의외로 사용하기 단순해서 하루이틀 정도만 써보면 금방 익숙해질 것 같긴 하다. conflict는 조금 더 해결해봐야 알겠지만... 

     

    관련해서 찾아보았던 내용들과 svn 사용 방법을 정리해보았다. 

    기본적으로 git을 사용해봤다는 전제로 쓰여졌기 때문에, 형상관리에 관해서는 따로 찾아보는 것이 좋을 것 같다.

     

    Tottoise SVN Client를 사용하면 GUI 환경에서 조금 더 편리하게 이용할 수 있다. 특히 Revert나 Conflict 같은 건 개인적으로 GUI툴로 사용하는 게 더 편했다. 나는 이 툴을 먼저 설치했고, 설치 중에 Command Line interface 설치 옵션을 체크해서 cli도 함께 설치했다. 

     

     

    1. 사전 환경

     

    1-1. References

    SVN 개념이 아직 와닿지 않는다면 아래 블로그 내용들을 추천한다. 내 경우 한 번 읽어보고, 직접 해본 뒤에 다시 읽어보니 많은 부분이 이해되었다. 역시 직접 해보는 게 좋다. 

     

     

    2. SVN 사용하기 

    2-1. Update

    • Checkout (svn 프로젝트 받기, 최초 1회)
    svn checkout https://bear/svn/trunk-test/

     

    • UPDATE 
    svn update 
    

     

    2-2. Branch 

    • branch 생성
    svn copy https://bear/svn/trunk-test/ https://bear/svn/trunk-test/branch-1 -m "Create a new branch"

     

    • 해당 branch로 전환
    svn switch https://bear/svn/trunk-test/

     

    2-3. Add & Commit 

    • 작업 후 add(git staging 같은) & commit(바로 원격 저장소로 push됨, revision 카운트 증가)
    > svn add *
    > svn commit -m "Add some files" 
    

     

    2-4. Merge

    • dry-run으로 선확인 후 merge, commit 할 것
    • switch 시 update 함께 수행됨
    > svn switch https://bear/svn/trunk-test/
    > svn merge https://bear/svn/trunk-test/branch-1 --dry-run
    > svn merge https://bear/svn/trunk-test/branch-1
    > svn commit -m "Merge changes from branch-1"

     

    • branch 삭제하는 방법
    > svn delete https://bear/svn/trunk-test/branch-1
    > svn commit -m "Delete branch-1"

     

    2-5. Log

    • 개수 제한해서 보기
    > svn log -l 10
    
    • 현재 트렁크에 업데이트 되지 않은 범위 보기
    > svn log -r BASE:HEAD
    
    • 특정 영역 히스토리
    > svn log -r [revision number]:HEAD
    

     

    2-6. Status

    > svn status 
    > svn status [filename]

     

    댓글

Designed by Tistory.