[svn] 로컬 편집 내용을 되 돌리지 않고 svn add 실행 취소

실수로 svn add *저장소에 있으면 안되는 많은 파일을 실행 하고 추가했습니다. 또한 유지하려는 일부 파일에 로컬 편집 내용이 있습니다. svn add로컬 수정 사항을 되 돌리지 않고 실행 취소하는 간단한 방법이 있습니까? Google에서 볼 수있는 주요 제안 svn revert사항은입니다. 이로 인해 로컬 수정 사항이 취소됩니다.



답변

그것은 :

svn rm --keep-local

나에게도 같은 일이 일어났다. :-피

많은 사람들이 당신이 사용해야한다고 언급했습니다.

svn rm --keep-local FILENAME

의도하지 않은 부작용을 일으킬 수있는 모든 것 대신 하나 이상의 파일에 명령을 적용합니다.


답변

해당 파일이 아직 커밋되지 않은 디렉토리에있는 경우 다음을 수행하여 다음 커밋에서 전체 디렉토리 내용을 제거 할 수 있습니다.

svn delete --keep-local /path/to/directory

그러나 해당 파일이 이미 리포지토리에 있고 커밋하지 않으려는 변경 사항이 포함 된 경우 변경 목록을 사용하여 나머지 파일을 커밋 할 수 있습니다.

svn changelist somename /file/to/be/committed
svn commit --changelist somename


답변

다음과 같은 방법으로 체크 아웃을 수정할 수 있습니다.

  1. 로컬 파일 백업
  2. SVN 체크 아웃 되돌리기
  3. 파일을 복원

rsync -av --exclude .svn/ YOURDIR/ YOURDIR.bak
svn revert -R YOURDIR
rsync -av YOURDIR.bak/ YOURDIR


답변

나는 같은 문제가 있었는데 실수로 svn add바이너리와 컴파일 된 파일이 들어 있는 / 디렉토리를 추가했습니다 . 이 명령은 실제로 디렉토리를 삭제합니다.

svn rm --force <directory-name>

제 경우에는 디렉토리가 필요 없으므로 삭제해도 안전합니다. 파일 / 디렉토리를 유지하려면 명령을 적용하기 전과 복사 한 후 저장하십시오.


답변