어느 가을날의 전환점

SCM|SVN(Subversion) 본문

Development

SCM|SVN(Subversion)

어느가을빛 2010. 10. 19. 15:10
SCM(Software configuration management, 소프트웨어 형상 관리)

Subversion

Eclipse에서 SVN(Subversion) 사용하기


---------------------------------------------------------------

TortoiseSVN

Optimize TortoiseSVN Cache Disk I/O
- Tortoise SVN 때문에 탐색기 버벅이는거 줄이는 방법
TortoiseSVN > Settings 메뉴 > Look and Feel > Icon Overlays 
1) Exclude paths(제외항목, 파일 변경사항 검사 제외): c:\ *
2) Include Paths(포함항목, 파일 변경사항 검사 포함): c:\dev*
작업관리자에서 TSVNCache.exe 강제 종료(재시작 됨)


Checksum mismatch for [filePath]; expected: ['xxxxxxxxxxx'], actual: ['xxxxxxxxxxx']
Subversion 작업사본(working copy)과 CleanUp
subversion 작업사본에는 ".svn"이라는 디렉토리들이 있습니다.

첫번째 예로, 아주 많은 양의 데이타를 update 받는다고 가정을 해보죠.
* update중에 비정상적인 원인으로 완료되지 못했다면,
* .svn 디렉토리에 그 정보(완료되지 못한 작업에 대한)가 남게 되어있습니다.
* 이 경우가 작업사본이 lock이 걸린 상태입니다.
* 따라서 "svn cleanup"을 수행하라는 의미입니다.
* 즉 subversion이 작업사본에 대해서 어떤 동작을 정상적으로 완료하지 못했을 때,
.svn 디렉토리에 그 정보가 남고, 그때 수행하는 명령이 "cleanup" 입니다.

그리고 import에 대해서는 비슷한 동작을 하는 것으로 add가 있습니다.
import와 add는 다음에서 차이가 있습니다.
* import는 작업사본이 필요없고, add는 작업사본이 필요합니다.
* 즉 add를 할려면 반드시 작업사본에서 수행되어야 합니다.
* 보통때는 import는 사용할 필요가 없습니다.
* 하지만 다음과 같은 경우에는 import가 유리합니다.
* 작업사본을 굳이 만들고 싶지 않는 경우
* 파일의 크기나 양이 아주 많아서 add/commit 명령의 조합으로 시간이 오래 걸릴 경우에.

다음과 같은 경우를 가정해보죠.
* 약 1GB 사이즈의 파일있고, 이 파일을 저장소에 추가한다면 add 보다는 import가 더 좋습니다.
* add를 사용하는 경우에는 다음과 같은 두가지 절차를 거치게 됩니다.
* add 명령을 내리게 되면, .svn 디렉토리에 해당 파일의 사본이 하나 들어가게 됩니다.
* 이제 실제 commit 명령을 내리면, 저장소에 1GB의 파일이 올라갑니다.
* 하지만 import를 사용하면, .svn 디렉토리에 1GB의 파일을 추가하는 동작이 없으므로,
사이즈나 스피드 면에서 더 좋습니다.

Checksum mismatch for [filePath]; expected: ['xxxxxxxxxxx'], actual: ['xxxxxxxxxxx']

 

일단 cleanup 하고 안되면, 아래 방법 수행.

 

1. 윈도우일때 탐색기로 해당 파일의 폴더를 찾는다.
2. 폴더의 명을 xx.bak 등으로 이름을 바꾼다.
3. 이클립스로 돌아와서 해당 폴더를 다시 update 받는다.
4. 새로 받은 파일들이 이상없는지 제대로 확인한다.
4. 이상없다면 백업했던 폴더를 탐색기에서 지운다.


*출처: http://blog.naver.com/zooaak?Redirect=Log&logNo=10083108616

[출처] SVN 오류별 대처법.|작성자 별루

Comments