본문 바로가기
Java/VCS

SVN 삽질기

by keunseok 2020. 3. 16.

SVN을 사용하고 있는 회사에서 소스 코드를 다운로드 받기 위해 STS 최신 버전, 그리고 Tortoise 최신 버전을 설치했다. SVN 주소를 입력한 후에 Checkout을 한 순간, 코드를 다운로드 받다가 계속 해시값이 맞지 않는다는 오류를 뿜어내면서 제대로 받아지지 않는 증상이 지속되었다.

인터넷으로 검색하니 대부분, cleanup 명령을 실행하라는 내용이 있었고, 그에 따라 cleanup > update.. 다시 오류 발생하면 cleanup -> update...

이러다보니, 소스 코드를 로컬로 다운로드 받는데만 시간이 엄청 소요되었고 스트레스는 엄청나게 쌓여갔다.

다른 사람들한테 물어보면 다들 잘 된다는데 나만 유독 안되니 더욱 미치고 환장할 지경이었다. 이 사람 저 사람 잘 되는지 물어보다가 어떤 한 분이 인텔리J에서 SVN과 상호작용할 때, 버전을 지정하는 것을 보았다. 설마?!

정확하게는 파악하지 못했지만, 인터넷을 좀 더 검색해보니, SVN 버전이 올라가면서 파일 포맷이 변경되었다고 한다. 앞에 언급하셨던 분은 1.7을 사용하고 있었는데. 내가 새로 설치했던 최신 버전들하고는 호환이 안되는것이 아닐까 싶었다.

호환되는 버전의 이클립스 플러그인과 TortoiseSVN을 찾아서 설치해보기로 했다. TortoiseSVN의 경우 다운로드 페이지에서 older 버전을 위한 링크가 제공되어서 쉽게 찾을 수 있었다. 해당 버전을 설치한 후, 위에서 실패했던 SVN 저장소에 접근해서 checkout을 해보니 오류 없이 모두 성공하였다.

호.. 정말 버전 문제 때문이었나보다. 

이번에는 이클립스 플러그인 설치에 도전해보았다.

먼저 이클립스 Marketplace에서 SVN을 검색하니 Subclipse가 나왔다. 근데 이걸로 설치했을 때 앞에 언급했던 오류들을 경험했다. 곰곰히 생각해보니 과거 Subversive 설치 했던 것이 떠올랐다. 이것은 설치 후 커넥터를 별도로 설치할 때 여러 클라이언트 버전을 깔았던거 같아서 도전해보기로 했다.

결과는? 실패다. Subversive를 설치해보려고 하니 해당 이클립스 버전에서는 지원하지 않는다고 떴다. 이클립스 버전을 낮은 것을 쓰기는 싫고... 어쩌지...

Subclipse 낮은 버전을 설치하면 되겠다 싶었으나, Marketplace를 통한 설치는 최신 버전만 가능해보였다. 그러다 문득, Marketplace 이전에 업데이트 URL을 통한 설치 방법이 생각나서 예전 버전 URL이 제공되는지 검색해보니 여러 개 등장! 1.7에 맞는 URL을 찾아서 subclipse를 설치하니 제대로 동작한다.

하.. SVN의 버전 차이라는 것은 전혀 예상하지도 못했다. 단지 다른 사람들이 파일을 올릴 때 깨진것 아닌가? 라는 것만 짐작했을 뿐이었다. 삽질하면서 엄청나게 열 받는 하루였지만, 해결을 했으니 그걸로 위안을 삼아야겠다.