본문 바로가기

checkout 문제 1. 리눅스 서버에 운영중인 기존 unversion 웹사이트 프로젝트가 있다.2. svn import 로 리눅스 저장소에 넣는다.3. svn co 로 리눅스 서버 작업 복사본에 내려받고 version 웹사이트로 운영한다. 3번 과정에서 체크아웃을 할 때 약간의 문제가 발생한다.other 에 쓰기 권한(w) 이 있는 파일/디렉토리에 쓰기 권한이 사라진다.drwxrwxrwx -> drwxrwxr-x 흔히 업로드 디렉토리라던지, 실행 권한이 필요한 본인인증, 결제모듈 등이 요주의 파일들이다.임포트시 잘못 올라가는건지 내려받을때 잘못 내려받는건지.import와 checkout 헬프를 아무리 찾아봐도 관련 옵션을 찾아낼 수 없다. umask 와 관련된 것 같지만 어떤 파일들은 기존 권한을 잘 가져오기도 한다. ㅡ..
SVN Icon error 윈도우즈에서 SVN 디렉토리에 오버레이 아이콘이 나타나지 않는다.윈도우즈에서는 오버레이 아이콘을 우선순위 별로 15개 정도만 보여준다고 한다.그 우선순위는 레지스트리 편집기(regedit - ShellIconOverlayIdentifiers 검색)에서 수정할 수 있으며수정 방법은 수정을 원하는 디렉토리명의 앞에 숫자를 사용하여 위쪽으로 당기는 것이다.0 이 제일 빠르겠지?내 오버레이 아이콘은 Dropbox, Ndrive, Tortoise 가 있다.수정 후에는 재부팅을 해야 적용된다.
svn propedit 작업 사본에 자동으로 생성되는 파일들도 있습니다. 썸네일 이미지, 세션, 각종 로그 파일등...이 때 svn st 명령으로 상태를 확인하면 무수히 많은 물음표(?) 때문에 정작 필요한 파일들의 구분이 힘들기 때문에 svn st -q 옵션을 사용합니다.다른 방안으로 해당 디렉토리의 속성을 변경하는 방법이 있습니다."이 경로는 무시해라." 는 의미로 svn:ignore 속성을 사용합니다.무시된 파일들은 svn st 명령어로 출력되지 않습니다.무시된 파일의 상태는 I 가 됩니다. propedit (pedit, pe)usage: svn propedit PROPNAME TARGET... $ svn pe svn:ignore session/// 에디터 자동 실행* <- session 디렉토리의 모든 파일을 무시// ..
svn blame 특정 파일의 각 라인에 대해 작업자 정보와 리비전을 알고 싶을 때 사용하는 명령어 입니다. blame (praise, annotate, ann)usage : svn blame TARGET[@REV]... 특정한 파일이나 URL의 내용들 각 라인마다 리비전과 작업자 정보와 함께 출력합니다.-r 옵션으로 특정 리비전을 지정할 수도 있습니다. 아래 예는, txt.php 파일이 리비전 8 번이었을 때의 리비전과 내용과 작업자 정보를 출력하는 예입니다. $ svn blame -r 8 txt.php 8 oops4u 8 oops4u 2 ggamzzak
svn diff 작업 사본의 특정 파일 혹은 특정 리비전의 변경점을 확인하고 싶을 때 사용하는 명령어 입니다. diff (di)usage: svn diff [-r N[:M]] [TARGET] 아래 예는 리비전 5부터 최신 리비전(head)까지의 변경점을 출력합니다. $ svn diff -r 5:headIndex: uc/test.php===================================================================--- uc/test.php (revision 0)+++ uc/test.php (revision 12)@@ -0,0 +1 @@+hiIndex: uc/index.html============================================================..
svn log 특정 리비전의 변경 내용을 확인하고 싶을 때는 log 명령을 사용합니다. logusage : svn log [REV] [PATH] 특정 리비전의 로그 메시지를 확인할 수 있습니다.-r 옵션으로 특정 리비전을 지정하거나 시작리비전:마지막리비전을 지정할 수 있습니다.-v 옵션으로 상세 로그를 확인할 수 있습니다. $ svn log -r 10------------------------------------------------------------------------r10 | oops4u | 2012-10-31 00:09:47 +0900 (Wed, 31 Oct 2012) | 1 linefixed main contents by oops4u----------------------------------------..
svn cleanup 특정 명령을 수행하는 중에 네트워크가 끊긴다던지, 작업자가 강제 중단을 한다던지 했을때.중단된 수행을 재개하고 로그파일을 삭제하는 명령이 cleanup 입니다. cleanupusage : svn cleanup [PATH...] 재귀적으로 작업 사본을 순회하면서 정리합니다. 잠금을 제거하고, 중단된 명령을 재개합니다.SVN은 어떤 명령이 작동하기 전 로그파일이 생성되고, 명령이 완료되면 로그파일을 삭제하는 방식이며,어떠한 방해로 인해 명령이 중단되고 로그파일이 남아있을 경우 작업물에 잠김(L) 표시와 함께 해당 파일은 잠기게 됩니다.이 때 cleanup 명령으로 중단된 작동을 재개시켜 명령을 완료하고 잠김 상태를 해제하고 로그파일은 삭제될 것입니다. $ svn st L . /somedirM . /somed..
svn lock / unlock 저장소나 작업사본의 특정 파일을 작업자들이 실수로 변경하는 것을 방지하기 위해lock 을 걸거나 unlock 으로 잠금을 해제할 수 있습니다. lockusage : svn lock TARGET... 다른 유저들이 변경할 수 없도록 작업사본의 PATH나 저장소의 URL을 잠급니다.다른 유저들이나 작업 사본으로부터 잠겨진 것들을 --force 옵션을 사용하여 잠금 권한을 가져올 수 있습니다. $ svn lock txt.c'txt.c' locked by user 'oops4u'.$ svn st -u K 8 txt.c 작업 사본의 txt.c 를 잠근 후 토큰(K) 확인.oops4u 사용자는 txt.c 를 변경이 가능하며 다른 사용자는 변경할 수 없음. unlockusage : svn unlock TARGET....