it-swarm-korea.com

Subversion 오류 : MKCOL에 대한 응답으로 (405 Method Not Allowed)

새 디렉토리 추가를 커밋하려고하는 동안 다음 오류가 발생합니다.

svn: Commit failed (details follow):
svn: Server sent unexpected return value (405 Method Not Allowed) in response to MKCOL request for '....

나는 전에이 오류를 본 적이 없다. 이 문제를 어떻게 해결할 수 있습니까?

솔루션
문제를 해결했습니다.

  • 문제가있는 폴더의 부모 디렉토리를 삭제하십시오.
  • SVN 업데이트를 수행하십시오.
  • 새 폴더와 이름이 같은 폴더가 이미 저장소에 있습니다.
  • 이 폴더를 삭제하십시오.
  • SVN 커밋.
  • 새 폴더, 복사 일정 및 SVN 커밋을 복사하십시오.
65
Sergio del Amo

이 오류는 일반적으로 추가하려는 폴더가 이미 리포지토리에 있음을 나타냅니다. 최근에 업데이트를 수행 했습니까, 아니면 비 재귀 체크 아웃을 시작하셨습니까?

이전 에이 오류가 발생했습니다. 문제가 무엇인지 알려주는 블로그를 찾았습니다. 해결책은 조금 더 복잡했습니다. 작업 사본에서 문제의 디렉토리를 제거하고 (다른 곳에 복사) 재귀 업데이트를 실행 한 다음 두 디렉토리를 수동으로 병합하십시오.

편집 : Opps-질문 본문에 이미 답변했습니다. 그리고 여기에 나는 대답하지 않은 질문에 대한 답을 알고 있다는 것에 흥분했습니다. :)

44
andrewc

Google 코드에서 MKACTIVITY와 비슷한 문제가있었습니다. http :로 저장소를 체크 아웃했지만 체크인에는 https :가 필요했기 때문입니다.

8
Troy Daniels

같은 오류가 발생하여 해결했습니다.

  1. SVN 문제가있는 디렉토리 이름을 'foo'로 바꾸십시오.
  2. SVN 커밋
  3. SVN 원하는 이름으로 다시 이름 바꾸기
  4. SVN 커밋

이것이 모든 경우에 작동하는지 확실하지 않지만 부모 디렉토리를 삭제하는 것보다 간단합니다.

5
Sam Dutton

Svn 저장소가 HTTP를 통한 커밋을 허용합니까? SourceForge와 같은 일부 리포지토리는 HTTP를 통한 anonymous 체크 아웃을 허용하지만 개발자는 svn 및 SSH를 통해 체크인해야합니다.

4
Dave Cheney

제 경우에는 폴더 내의 파일을 체크인하는 데 문제가있었습니다. 세르지오가 몇 가지 변경 사항을 설명하는 단계를 수행했습니다.

  1. 문제가있는 상위 디렉토리를 복사했습니다.
  2. 복사 한 디렉토리에서 삭제 된 .svn 파일
  3. svn delete/parent_directory
  4. 범하다
  5. Repo에 새 디렉토리를 만듭니다
  6. 범하다
  7. 복사 된 디렉토리에서 리포지토리로 하위 디렉토리 이동
  8. 범하다
  9. 개별 파일 복사
  10. 범하다

도전 할 파일이 몇 개있었습니다. 나는 그것들을 저장소에서 제외했지만 새로운 이름으로 다시 만들었습니다.

3
Dawn Green

SVN 형식의 디렉토리를 제거한 다음 다시 추가 할 때이 문제가 발생했습니다. 새로 추가 된 디렉토리를 커밋하면 SVN 에서이 오류가 발생했습니다. 새로 추가 된 디렉토리에서 SVN을 실행하여 문제를 해결 한 다음 충돌을 수동으로 해결했습니다 .

2
imikay

호스팅되는 svn 서비스 인 Unfuddle을 사용하면 OS X Finder에서 파일 복사로 .svn이 짓밟 힐 때이 오류가 반복적으로 나타납니다. 나를 위해 일한 svn incantation :

  • 돌아가다
  • 최신 정보
  • 원격 URL을 사용하여 폴더를 삭제하십시오.
  • 폴더 추가 및 커밋
1
xentek

폴더를 백업하십시오.
Repo-Browser를 사용하여 저장소에서 폴더를 삭제하십시오.
다시 커밋하십시오.

나에게 잘 작동합니다.
마커스

0
Marcus

이클립스에서는 쉽게 고칠 수 있습니다.

팀> 다른 태그/분기로 전환

완전 재귀를 선택하고 지정된 깊이로 작업 사본 변경을 선택하십시오.

OK를 누릅니다

폴더 아이콘이 변경됩니다. 마우스 오른쪽 버튼을 클릭하고 (팀>) Mark Resolved.

그게 다야 이제 커밋 할 수 있습니다.

0
juliangonzalez

필자의 경우 로컬 (클라이언트) 메타 데이터가 이미 서버에 있다고 가정하고 정리하면 수정하지 않은 새 디렉토리를 추가했습니다. 모든 새 파일과 수정 된 파일을 백업하고 모든 파일 (루트 .svn 폴더 제외)을 삭제하고 업데이트를 실행하여 파일을 복원 한 다음 백업 한 새 파일과 수정 된 파일을 디렉토리에 다시 복사했습니다. 새 파일을 다시 추가하고 성공적으로 커밋했습니다.

0
stimpy77

비슷한 문제가 있었는데 svn 폴더를 업데이트하는 것보다 안전을 위해 디렉토리를 백업했습니다. 그 후 나는 다시 커밋 할 수 있습니다. (그리고 내 백업을 사용하지 않은)

0
Ohad Cohen