회사에서 이팀 저팀 협업을 기본으로 업무를 진행하다보니, SW 개발 소스 등은 Subversion을 이용해 버전 관리 및 작업 공유 수단으로 사용하고 있는데, 가끔 아무 이유 없이 오류가 발생하곤 해서 해결책을 기록해본다.
svn: E195009: The repository at 'svn://[IP]' has uuid '07980456-4b3d-4695-bf7b-21c7115235c8', but the WC has '3f5adbe2-f78d-466d-b79d-bb2359ec84fc'
원격저장소의 고유 ID 값과 개별 작업컴퓨터에서 저장한 저장소의 고유 ID값이 일치하지 않아 발생하는 오류인데, 멀쩡히 작업 잘 해놓고도 반영을 못하는 사태가 종종 일어나서 해결책 찾아 삼만리.
해결책을 찾아보니 .svn
폴더 안에 wc.db
라는 파일이 있는데, 이게 저장소의 로컬 데이터베이스로 사용된다. SQLite3으로 생성되어 있기에 SQLite3을 설치 후 아래와 같이 실행해본다.
sqlite3 wc.db
이렇게 하면 sqlite3이 실행되며 wc.db
파일을 읽어오고 SQL을 입력받을 수 있는 상태가 된다.
SELECT * FROM REPOSITORY';
이렇게 하면 결과가 아래와 같이 표시된다.
1|svn://[IP]|3f5adbe2-f78d-466d-b79d-bb2359ec84fc
맨 앞의 1
은 id
번호, 파이프(|
)는 구분자, svn://[IP]
는 원격저장소 IP이니 무시하고, 3f5adbe2-f78d-466d-b79d-bb2359ec84fc
가 고유 ID이니 이것만 확인하면 된다. 보다시피 원격저장소와 작업 사본의 UUID가 일치하지 않는다. 작업 사본의 ID 값을 원격저장소의 값으로 갱신해주자.
UPDATE REPOSITORY SET uuid="07980456-4b3d-4695-bf7b-21c7115235c8" WHERE id=1;
이제 SVN에서 update
를 실행하면 문제없이 진행된다.
'Studies > Others' 카테고리의 다른 글
[Excel] Unix Timestamp를 Excel 날짜시간으로 변환하기 (0) | 2020.12.17 |
---|