2010-01-14 4 views
0

좋아, 빈 디렉토리를 재귀 적으로 삭제하는 작은 응용 프로그램을 작성 중입니다. Codeplex에서 소스 제어하에 있으며 TortoiseSVN을 사용하여 액세스합니다.SVN : 작업 디렉토리의 빈 폴더가 삭제 된 경우 수행 할 작업

그래서 언젠가는 모든 코드가있는 디렉토리에서 실행했습니다. 그리고 괜찮 았어. 빈 디렉토리가 사라졌습니다. 그런데 Subversion에서 호스팅 한 프로젝트의 최신 변경 사항을 적용하려고 시도했지만 그럴 수 없었습니다! 누락 된 폴더 나 뭔가에 대해 불평하고있었습니다. 분명히 .svn이라는 숨겨진 폴더가 작업 디렉토리 (내가 알고있는 종류) 주위에 퍼져 있는데, 여기에는 매우 중요한 빈 디렉토리 (내가 알지 못했던)가 포함되어 있습니다. 분명히, 그들은 너무나 중요해서 그들이 없어지면 아무 것도 할 수 없습니다. 상황이 작동을 멈춘다 ...

나는 SVN 업데이트, 정리, 개정판으로 되돌리기, 되돌리기 등을 시도했다. 아무것도 효과가 없습니다. 항상 어떤 종류의 오류 메시지가 있습니다. 폴더 이동, 새로운 폴더 생성, Codeplex에서 다시 가져온 작업을 마친 다음 수동으로 이전 폴더에서 변경 사항을 이동하십시오. 매우 지루하고 귀찮습니다.

그럼, 어떻게 될까요? 빈 폴더가 없으면 왜 작동하지 않을까요? 그리고 다시 일어난다면 그것을 고칠 수있는 방법이 있습니까?

+3

어쩌면 "폴더와 일치하는 패턴 제외"기능을 응용 프로그램에 추가 할 수 있습니다. –

+0

@Nick : 하하, 이미 작업 중입니다 : p – Svish

답변

2

.svn 폴더와 그 내용 (비어있는 경우에도)은 작업 복사본이 작업 복사본이라는 것을 Subversion에 알려주는 것입니다. 그들을 삭제하면 디렉토리가 디렉토리가됩니다. 다른 새로운 프로젝트처럼 Repo에 가져올 수는 있지만 중복 프로젝트가 있으므로 생각이별로 좋지 않습니다.

새 작업 복사본을 확인하고 수정 된 파일과 새 파일을 복사 한 다음 다시 커밋하는 것이 고통 스럽습니다.

1

빈 폴더가 없으면 작동하지 않는 이유를 알려주는 Subversion의 구현에 대해 충분히 알지 못하지만 .svn 폴더는 각 파일의 기본 버전과 같이 작업 복사본에 대한 메타 데이터를 보유합니다 (명령 svn st처럼 서버에 접속하지 않고 변경 한 내용을 볼 수 있습니다.)

지저분한 경우 깨끗한 계산대에서 새 작업 복사본을 시작하는 것 외에는 복구 할 수있는 좋은 방법이 아닙니다.

관련 문제