Lỗi lật đổ: (405 Phương thức không được phép) khi phản hồi MKCOL


65

Tôi nhận được lỗi sau trong khi cố gắng để thêm một thư mục mới.

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

Tôi chưa bao giờ thấy lỗi này trước đây. Làm thế nào tôi có thể khắc phục vấn đề này?

Giải pháp
tôi quản lý để giải quyết vấn đề:

  • Xóa thư mục cha mẹ của thư mục đưa ra vấn đề.
  • Làm SVN Cập nhật.
  • Một thư mục có cùng tên với thư mục mới đã tồn tại trong kho lưu trữ.
  • Xóa thư mục này.
  • SVN cam kết.
  • Sao chép thư mục mới, lên lịch để bổ sung và cam kết SVN.

Thiếu thông tin, như cấu hình, vận chuyển của bạn (HTTP / HTTPS), các thông báo trên nhật ký lỗi máy chủ (quan trọng nhất), nếu bạn đang chạy dịch vụ bộ đệm web giữa máy khách và máy chủ, v.v ...
Juliano

7
Vui lòng thêm giải pháp dưới dạng câu trả lời, thay vì thêm vào câu hỏi
Sam Cogan

3
Tôi ghét svn đưa ra lỗi và dừng lại. Nó trông giống như một đứa trẻ đang quay cuồng mọi lúc. Tôi hoàn nguyên, hơn là thêm vào đó cam kết và máy chủ kỳ diệu bị kết tội.

Để biết kho lưu trữ mã google, hãy xem - stackoverflow.com/a/32636072/1406510
nanosoft

Câu trả lời:


44

Lỗi này thường chỉ ra thư mục bạn đang cố thêm đã tồn tại trong kho lưu trữ - bạn đã thực hiện cập nhật gần đây chưa, hoặc bạn đã thực hiện kiểm tra không đệ quy để bắt đầu chưa?

Trước đây tôi đã gặp phải lỗi này - tìm thấy một blog cho tôi biết vấn đề là gì. Giải pháp phức tạp hơn một chút, xóa thư mục trong câu hỏi khỏi bản sao làm việc của tôi (sao chép nó ở nơi khác), chạy cập nhật đệ quy, sau đó hợp nhất hai thư mục lại với nhau theo cách thủ công.

Chỉnh sửa: Opps - đã được trả lời trong cơ thể câu hỏi. Và ở đây tôi rất phấn khích vì tôi biết câu trả lời cho một câu hỏi chưa được trả lời :)


@Andrew - tốt, bạn đã trả lời đúng câu hỏi ... @Sergio nên đã trả lời câu hỏi của chính mình.
Josh

8

Tôi đã có một vấn đề tương tự với MKACTIVITY trên googlecode. Đó là vì tôi đã kiểm tra kho lưu trữ với http:, nhưng yêu cầu đăng ký https :.


Bắt tuyệt vời - Tôi vừa mới giải phóng cơn giận dữ của lập trình viên thiếu kiên nhẫn trên máy của tôi. :) Bạn cần phải kiểm tra lại thư mục bằng https: (hoặc nếu bạn lén lút xóa thư mục ngoại trừ .svn, sau đó sửa đổi nội dung của .svn / mục có url từ http => https. Bây giờ màn hình cam kết sẽ hiển thị URL https.)
Gishu


5

Tôi đã nhận được cùng một lỗi và quản lý để giải quyết nó:

  1. SVN Đổi tên thư mục có vấn đề thành 'foo' hoặc bất cứ điều gì
  2. Cam kết SVN
  3. SVN Đổi tên thành tên bạn muốn
  4. Cam kết SVN

Tôi không chắc chắn nếu điều này hoạt động trong mọi trường hợp, nhưng nó đơn giản hơn việc xóa thư mục mẹ.


Giải pháp đơn giản đó đã giải quyết vấn đề của tôi. Cảm ơn rất nhiều! :)
consuela 6/03/2015

4

Kho lưu trữ svn của bạn có cho phép xác nhận qua HTTP không? Một số kho lưu trữ, như SourceForge, cho phép kiểm tra ẩn danh qua HTTP, nhưng yêu cầu các nhà phát triển đăng ký thông qua svn và SSH.


3

Trong trường hợp của tôi, tôi đã gặp vấn đề khi kiểm tra các tệp trong một thư mục. Tôi làm theo các bước mà Sergio vạch ra với một vài thay đổi.

  1. Sao chép thư mục cha mẹ có vấn đề.
  2. Đã xóa các tập tin .svn trong thư mục sao chép
  3. xóa svn / Parent_directory
  4. Cam kết
  5. Tạo thư mục mới trong repo
  6. Cam kết
  7. Di chuyển thư mục con từ thư mục sao chép sang repo
  8. Cam kết
  9. Sao chép các tập tin cá nhân
  10. Cam kết

Tôi đã có một vài tập tin mà tôi có thách thức. Tôi đã để chúng ra khỏi kho lưu trữ, nhưng đã tạo lại chúng với một tên mới.


2

Tôi gặp vấn đề này khi xóa một thư mục mẫu SVN, và sau đó tạo lại nó, khi tôi cam kết thư mục mới được thêm vào, SVN đã gặp lỗi này. Tôi đã giải quyết vấn đề bằng cách chạy SVN lên trên thư mục mới được thêm vào, và sau đó giải quyết xung đột bằng tay .


1

Sử dụng Unfuddle, một dịch vụ svn được lưu trữ, tôi liên tục gặp lỗi này khi .svn bị chà đạp bởi sao chép tệp trong công cụ tìm OS X. Câu thần chú svn đã làm việc cho tôi:

  • hoàn nguyên
  • cập nhật
  • xóa thư mục bằng url từ xa
  • thêm và cam kết thư mục

0

Trong trường hợp của tôi, tôi đã thêm một thư mục mới mà siêu dữ liệu (máy khách) cục bộ của tôi giả định đã có trên máy chủ và Cleanup không khắc phục nó. Tôi đã sao lưu tất cả các tệp mới và sửa đổi, xóa mọi thứ (trừ thư mục gốc .svn), chạy Cập nhật để khôi phục các tệp và sao chép lại vào thư mục các tệp mới và các tệp đã sửa đổi mà tôi đã sao lưu. Tôi đã thêm các tập tin mới một lần nữa và cam kết thành công.


0

Trong Eclipse rất dễ sửa chữa.

Nhóm> Chuyển sang Thẻ / chi nhánh khác

Chọn, đệ quy đầy đủ và kiểm tra Thay đổi bản sao làm việc theo độ sâu đã chỉ định

nhấn OK

Thay đổi biểu tượng của thư mục. Nhấp chuột phải và (nhóm>) Đánh dấu giải quyết.

Đó là nó, bây giờ bạn có thể cam kết.


Hãy nhớ rằng Eclipse là một công cụ phát triển và không thực sự là trọng tâm của ServerFault.
Andrew B

0

Tạo một bản sao lưu của thư mục.
Xóa thư mục trong kho lưu trữ (sử dụng Repo-Browser).
Cam kết một lần nữa.

Hoạt động tốt cho tôi.
Marcus


0

Tôi gặp vấn đề tương tự, tôi đã sao lưu thư mục (chỉ để an toàn) hơn là cập nhật thư mục svn. sau đó tôi có thể cam kết một lần nữa. (và không sử dụng bản sao lưu của tôi)


-1

Tôi gặp sự cố với e175002 200 OK. Nhưng tôi đọc được rằng đường dẫn trên thông báo lỗi đang nói về một máy chủ sai, vì vậy URL của thân cây của tôi không phải là tốt ( http: // localhost: 80 / path / to / my / trunk / ) chờ đợi! ĐỊA PHƯƠNG?! ... Và bây giờ tôi nhận ra rằng vì trong lần quay đầu tiên, các cài đặt của tôi đã gửi các tệp dự án của tôi tới repo cục bộ của tôi. Vì vậy, trong lần quay đầu tiên của bạn, hãy đảm bảo rằng các cài đặt cho IP của máy chủ của bạn không bị sai bởi vì sau đó ... repo sẽ chứa thông tin sai và bạn sẽ phải tìm cách sửa đổi các cài đặt xấu đó trên đó hoặc trên mọi khách hàng muốn sử dụng repo của bạn lần đầu tiên.

Cách khắc phục của tôi là kiểm tra từng thư mục trong dự án của tôi. trên mỗi thư mục đều có thư mục .svn lưu trữ thông tin và trên mỗi thư mục .svn có một tệp có tên là "mục". Trong tệp này có đường dẫn đến máy chủ, tôi đã thay thế dòng xấu bằng IP tốt trong mỗi mục được lưu trữ trong mọi thư mục .svn. Và sau đó không còn lỗi nữa.

Hy vọng nó giúp. :) xin lỗi nếu khó hiểu bài viết của tôi ^^ 'Tôi là người cố gắng hơn.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.