2014-05-25 4 views
2

Windows Server 2003에 VisualSVN Server 2.1.3이 설치되어 있고 모든 클라이언트 컴퓨터가 커밋 및 기타 svn 작업에 TortoiseSVN 클라이언트를 사용하고 있습니다. 어제까지 모든 것이 잘 작동했습니다.VisualSVN 오류 - 수정 파일에 줄 바꿈이 없습니다.

어제 밤에 수정 번호 22181을 작성하여 퇴사했으며 어제 이후 발생한 마지막 커밋입니다. 그런 다음

Revision File Lacks Trailing Newline. 

내가 연구를 시작했고 나는를 입력 할 때 구글의 첫 번째 결과로 제공하는 아래 링크를 포함하여 많은 것들을 시도 : 오늘 로그를 보여 주려고 또는 SVN을 업데이트했을 때, 나는이 오류가 발생했습니다 오류 설명.

http://www.jamesstroud.com/jamess-miscellaneous-how-tos/os-x-admin/fix-svn-revision-file-lacks-trailing-newline

이 링크 svn의 크기가 4GB 이상의 커밋하지만 마지막은 내가 거의 1메가바이트이었다 않았다 커밋 할 때이 오류가 발생 있다고하지만. 그런 다음

Cannot move tempfile.2.tmp to txn-current : the disk structure is corrupted. 

: 내가 파일을 커밋하려고 할 때 나는 아직도 게시물에서 언급 한 위의 단계를 수행하고,이 후 나는 좋은 징조입니다 저장소에 쇼 로그를 할 수 있었다 그러나 나는 또 다른 오류가 발생했습니다 나는 처음에 백업을 가져 와서 위의 지시에 따라 더 많은 것을 연구하면서 위의 변경 사항을 되 돌렸고 어제 커밋 한 마지막 개정판에 문제가 있음을 알게되었습니다. 그런 다음 svnadmin.exe을 사용하여 명령 줄을 사용하고 덤프 명령을 사용하여 ² ~ ²2180 사이의 덤프 파일을 만들었지 만 만든 서버의 크기가 덤프 된 것처럼 보아서 깜짝 놀랐다. 덤프 파일을 저장합니다. 덤프 뒤에있는 주제는 마지막으로 22181을 제외한 모든 개정을 덤프 한 다음 새 저장소를 작성하고 덤프 파일을로드하여 문제점을 해결할 수 있다는 것입니다. 그리고 dump 명령에 특정 수정을 지정하면 전체 데이터베이스에서 생성 된 덤프보다 더 많은 공간이 필요하다는 것을 알았습니다. 하지만 전체 데이터베이스를 덤프하면 전체 덤프 파일에서 마지막 버전을 어떻게 제거합니까? svnadmin.exe dump –r 1-9 F:\svn-repo > C:\Tempdump.dmp

지금 나는이 메시지를 게시 한 후 verify 명령을 사용하는 것을 시도하고있다 : 당신이 svnadmin 명령을 알고 싶다면

은 나는 여기에 다음 달렸다.

저는 지금 피곤해서 내일 우리 직원이 svn 작업 없이는 작동하지 않을 것이므로이 문제를 해결하는 데 도움이됩니다. 우리의 SVN 저장소 크기가 거의 35 기가 바이트이고 나는 덤프 명령을 사용해야한다면 USB 하드 디스크를 연결하여 최대 공간을 가진 서버 드라이브가 덤프 파일을 저장하기 위해 48GB 공간이있는 C 드라이브 여야한다고 생각합니다.

실제 해결책이 무엇인지 잘 모릅니다. 제발 도와 줘서 고마워. 저장소가 손상

답변

2
  1. 감사 enter image description here, 당신은에서 복원 할 백업을해야합니까? 백업에서 리포지토리를 복원하는 것이 가장 좋은 방법입니다.

    일반적으로, 그것은 의미가 손상이 있는지 확인하기 위해 에 대해 당신이 저장 장치에있는 각 저장소를 svnadmin verify를 실행할 수 있습니다. svnadmin verify command-line reference을 참조하십시오.

    저장 장치 (HDD?당신이 개정 22,181 최선을 다하고 경우) 난 강력하게이 필요 경우 교체 chkdsk 도구를 사용하여 오류 및 을 위해 그것을 확인 추천, 밤에 를 손상되었다. chkdsk tool reference을 참조하십시오.

  2. 설정을 사용하는 svnadmin dump으로 생성 된 덤프가 디스크의 저장소보다 클 것으로 예상됩니다. 리비전 0-22180의 덤프 크기를 줄이려면 "--deltas"옵션을 사용하십시오.

    SVNBook | Repository data migration using svnadmin 참조 :

    By default, the dump file will be quite large—much larger than the repository itself. That's because by default every version of every file is expressed as a full text in the dump file. This is the fastest and simplest behavior, and it's nice if you're piping the dump data directly into some other process (such as a compression program, filtering program, or loading process). But if you're creating a dump file for longer-term storage, you'll likely want to save disk space by using the --deltas option. With this option, successive revisions of files will be output as compressed, binary differences—just as file revisions are stored in a repository. This option is slower, but it results in a dump file much closer in size to the original repository.