Contents

Develop
2014.02.28 00:48

SVN 명령어 (SVN command)

조회 수 12388 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
SVN Command

svnadmin dump
   - 저장소 백업
   - svnadmin dump [저장소 폴더명] > [덤프 파일명]
   - ex) svnadmin dump project_sample > dump_project_sanmple_20010131

svnadmin load
   - 저장소 복원
   - svnadmin load [저장소 폴더명] < [덤프 파일명]
   - ex) svnadmin create project_sample
           svnadmin load project_sample < dump_project_sanmple_20010131

svn checkout
   - svn 서버에서 소스 내려받기
   - svn checkout svn://192.168.2.2/App App
   - svn checkout -r 100 svn://192.168.2.2/App App   (revision 100번 소스 받기)
   - svn checkout -r HEAD svn://192.168.9.128/sample_repos sample_HEAD     (마지막 리비전 받기)
   - 자세한 것은 svn checkout --help 참고

svn export
    - 버전관리 정보 없는 깨끗한 사본을 받아옴
    - svn export --help
    - svn export -r 1 svn://192.168.0.12/sample_repos sample_pos


svn commit 파일명 or 폴더명 or ./
   - svn commit 했을 때 소스 파일에서 out of date 에러 날 때는 그 사이에 svn에 소스가 업데이트 됬다는 의미이다. 따라서, out of date 에러났을 때는 svn update을 실행해서 동기화를 한 후에 commit을 하면 된다.
   - commit 하기전에는 update를 실행하여 out of date 에러를 막자.
   - 예)
      # svn commit
      # svn commit ./test/test.h
 
svn resolved -R ./
   - 소스 충돌 날 때 이놈으로 풀면 됨.

svn cleanup
   - 소스가 lock 되 있을 경우 이 명령으로 해제 한다. lock 되는 원인은 알아서 찾는다.
 
svn update
   - 서버와 소스 동기화.
      A  Added
      D  Deleted
      U  Updated
      C  Conflict
      G  Merged
      E  Existed
   - commit 하기전에는 소스 충돌을 막기 위해 update를 실행해야 한다.
   - update를 했는데 에러가 났을 경우에는 각각의 revision을 따로 update 해본다.
     경험상 한번에 할 경우에 드물게 에러가 나는 경우가 있다.
      #svn update -r 100   --> 100은 revision number
      #svn update -r 101
 
svn log
   - svn user가 commit한 로그 볼 때 사용한다.
      # svn log svn://192.168.9.128/sample_repos => 주의) svn path를 안주면 마지막 로그를 빼먹는다.
      # svn log -l 10   (상위 10개의 로그만 보기)       => 주의) svn path를 안주면 마지막 로그를 빼먹는다.
      # svn log -l 10 svn://192.168.9.128/sample_repos
    
   - commit log 수정하기
      # svn propset --revprop -r [리비전번호] svn:log “수정할 메세지”
       참고: http://altistory.net/929
      # TortoiseSVN 사용할 때 show log 선택 후에 로그 패널에서 마우스 오른쪽 버튼 클릭하면 "Edit log message" 나온다.

svn mkdir
   - repository에 folder 생성한다.
    - # svn mkdir svn://192.168.163.11/TEST_repo/test_folder

svn import
   - 처음으로 repository에 파일 추가하기. 
    - 주의할점은 *.a 같은 파일은 추가 안될 수 있으니 --no-ignore 옵션 사용하기.
    - # svn import import_path svn://192.168.163.11/TEST_repo/import_path --no-ignore

svn add
   - 새로 만든 파일 추가 하기. import와 똑같이 사용 가능하다.
   - # svn add --no-ignore [path]

svn delete (or del, remove)
   - 파일, 폴더 삭제
   - # svn del [FILE_NAME] or [DIR]
   - # svn del svn://192.168.16.11/TEST_repo/test_dir
      --> commit도 동시에 된다. help 참고.
 
svn switch(or sw)
   - 저장소 이름 변경할 때
    # mv sample_repo1 sample_repo2 (su 로그인 후 저장소 이름을 직접 변경)
    # svn switch --relocate svn:/192.168.9.128/sample_repo1 svn:/192.168.9.128/sample_repo2
       --> repository에서 다운받은 곳에서 명령을 실행한다.

    "svn: E155007: 작업 사본이 아닙니다.(Not a working copy)" 이 에러는 .svn 없는 곳에서 svn 명령을 실행
     했을 때 발생한다.
    
   - 저장소 IP 변경할 때
    # svn switch --relocate svn:/192.168.30.198/sample_repo1 svn:/192.168.30.122/sample_repo1

svn diff
  - 두 revision 비교 또는 file 비교
  - 참고: http://pokute.tistory.com/201
변경된 파일만 출력
# svn diff | awk '/^Index/ {print $NF}'

두 리비전 비교
# svn diff -r 100:101

두 리비전의 파일비교
#svn diff -r 100:101 file_path

[참고 링크] http://blog.daum.net/rayolla/251

?

  1. [linux] awk 명령어

  2. [linux] 쉘스크립트 expr

  3. [ios] URL Scheme 이용하여 앱 설치 확인

  4. [linux] CentOS Apache Httpd에 https 적용

  5. SVN 초간단 사용하기

  6. SVN 명령어 (SVN command)

  7. 페이팔에서 돈 찾기 (Paypal withdraw)

  8. [sql] 한눈에 보이는 Join

  9. [unix] 유닉스 명령에 메타문자 사용

  10. [unix] Java 애플릿용 HTML 자동 생성

  11. [unix] 로그파일 정리 쉘스크립트

  12. [html] SVG(Scalable Vector Graphics) 간단 정리

Board Pagination Prev 1 ... 22 23 24 25 26 27 28 29 30 31 ... 98 Next
/ 98