어제 저에게 제목과 같은 일이 벌어졌습니다.
하나의 SVN에 여러개의 프로젝트를 등록해서 사용하고 있고
PC에서는 GIT를 사용하고 있었습니다.
여러 프로젝트를 작업하다가
그중 하나의 프로젝트를 commit 후 SVN 에 DCOMMIT을 했는데
중간에 간간히 뜨던 팝업을 그동안 그냥 무심코 Yes 를 클릭했었는데
무심코 마지막으로 뜨던 팝업에 No를 클릭했더니
commit 하지 않았던 프로젝트의 소스가 원래대로(commit 했던 상태) 돌아와버린것입니다.
우째 이런일이....ㅜㅜ;
그래서 정리해봤습니다.
작업한 사본이 명확하지 않습니다. 변경된 사항을 숨길까요?
No를 클릭하면 DCOMMIT 은 진행되지 않습니다.
Yes 를 누르면 DCOMMIT이 이루어지는데 그중간에 보면 commit 하지 않은 다른 소스들이 원래대로 돌아와있는 것을
확인할수있습니다. (후덜덜한 상태입니다....)
DCOMMIT 을 마치고 Close 버튼을 누르면
DCOMMIT 전에 숨겨놓은 변경사항을 다시 돌릴까요?
여기서 반드시 Yes 를 클릭해야됩니다.
No 를 선택하는 순간...
지옥의 문이 열릴겁니다. (아~ 디아블로 3 하고 싶다.)
(추가) 숨겨놓은 변경사항들을 다시 살리는 법이 있습니다.
마우스오른쪽버튼을 누르면 Stash save, Stash Pop, Stash List 라고 있습니다.
이곳에서 Stash List 를 확인후에 Stash Pop 을 이용하여 복구할 수 있습니다.^^
그리고 만일 DCOMMIT 하지 않고 commit 만 한 상태로
다른 프로젝트를 commit 하고 DCOMMIT 하면 기존에 commit 했던 부분도 같이 DCOMMIT 됩니다.
어떻게 생각하면 당연한 일이지만,
혹시 DCOMMIT 을 원하지 않았던 부분도 같이 DCOMMIT 되는 결과가 나오는 것이므로 주의 하세요.