1. E200009 에러
Some of selected resources were not committed.
svn: E200009: Cannot commit 'D:\...\src\main\webapp\WEB-INF\jsp\system\testLog' because it was moved to 'D:\...\src\main\webapp\WEB-INF\jsp\workflow\testLog' which is not part of the commit; both sides of the move must be committed together
위 E200009 에러는 ...\jsp\system\에 있는 testLog.jsp를 ...\jsp\workflow\로 옮긴 후 커밋하려할 때 발생한 에러이다.
이를 해결하는 방법은 간단하다.
이동시키기 전의 경로와 이동시킨 후의 파일을 한번에 커밋하면 된다.
나같은 경우에는 testLog.jsp를 ...\jsp\system\에서 ...\jsp\workflow\로 파일을 옮긴 후 ...\jsp\system\에 아무 파일도 없어서 디렉토리를 삭제해야 했다. 그런데 기존에 ...\jsp\system\testLog.jsp가 커밋되어 SVN에 저장된 상태였다.
...\jsp\workflow\testLog.jsp만 커밋하려니까 SVN 입장에선 testLog.jsp가 어디에서 어디로 이동되는지도 알아야하기 때문에 위와 같은 에러를 뱉는 것이다.
그래서 ...\jsp\system\ 디렉토리와 ...\jsp\workflow\testLog.jsp를 한번에 커밋했더니 정상적으로 반영이 되었다.
SVN의 경우, 삭제할 것도 커밋을 해야 한다.
2. E155004 에러
Some of selected resources were not committed.
svn: E155004: Commit failed (details follow):
svn: E155004: Working copy 'D:\workspace1\example\src\main\webapp\WEB-INF\jsp\system\testfile':
svn: E155004: 'D:\workspace1\example' is already locked.
위 E155004 에러는 svn에 커밋하려고 할 때 발생한 에러이다.
testfile을 커밋하는 중에 이클립스가 렉 걸려서 커밋이 잘 반영되지 않아 이클립스를 재부팅했는데, 이 파일을 다시 커밋 시도하니 'Commit operation failed'라고 하면서 저 에러문구가 출력되었다.
아마 svn에서는 testfile을 커밋하는 중이었는데 내가 이클립스를 꺼버려서 커밋 프로세스를 완료하지 못했기 때문에 발생한 것으로 보인다.
이 문제는 다음의 블로그 글을 통해 해결하였다.
http://dzzienki.tistory.com/69
우선 SQLite 프로그램을 설치해야 한다.
프로그램은 SQLite 홈페이지(https://sqlitebrowser.org/)에서 최신 릴리즈로 다운로드 받으면 된다.
그 다음, 내 워크스페이스 디렉토리 밑에 숨김 폴더로 존재하는 .svn/를 들어간다.
.svn/을 들어가면 wc.db 파일이 있을 건데, SQLite를 실행시킨 다음에 이 파일을 SQLite로 드래그하면 된다.
wc.db 파일을 통해 워크스페이스에 대한 데이터를 확인할 수 있는데, 이때 '데이터베이스 구조' 탭이 먼저 보일 건데 맨 오른쪽에 있는 'SQL 실행' 탭을 클릭한다.
SQL에 select * from wc_lock; 쿼리를 실행하면 내가 현재 커밋하지 못한 파일에 대한 데이터가 보일 것이다.
이 데이터를 삭제해야 svn에서 다시 testfile을 커밋할 수 있다.
delete from wc_lock; 쿼리를 실행하여 wc_lock 테이블에 있는 데이터를 전부 삭제한다.
실행이 완료되면 상단에 있는 '변경사항 저장하기' 버튼을 클릭하면 된다.