Помилка підриву: (метод 405 не дозволений) у відповідь на MKCOL


65

Я отримую таку помилку під час спроби зробити нове додавання до каталогу.

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

Я ніколи раніше не бачив цієї помилки. Як я можу виправити цю проблему?

Вирішення проблеми
мені вдалося вирішити:

  • Видаліть батьківський каталог папки із проблемою.
  • Зробіть оновлення SVN.
  • Папка з такою ж назвою, що і нова, вже існувала у сховищі.
  • Видаліть цю папку.
  • SVN фіксація.
  • Скопіюйте нову папку, графік додавання та SVN-фіксацію.

Не вистачає такої інформації, як ваша конфігурація, транспорт (HTTP / HTTPS), повідомлення в журналі помилок сервера (найважливіше), якщо ви користуєтесь послугою веб-кешування між клієнтом і сервером тощо ...
Juliano

7
Будь ласка, додайте рішення як відповіді, а не додаючи до запитання
Сем Коган

3
Я ненавиджу svn, що дає помилку і зупиняється. Це схоже на те, що дитина весь час заколисує. Я повернувся, ніж додав тоді докладений і магічно прийнятий сервер.

Для Google репозиторій коду см - stackoverflow.com/a/32636072/1406510
Nanosoft

Відповіді:


44

Ця помилка зазвичай вказувала на те, що папка, яку ви намагаєтеся додати, вже існує у сховищі - чи нещодавно ви робили оновлення, чи ви робили нерекурсивну перевірку для початку?

Раніше я стикався з цією помилкою - знайшов блог, який розповів, у чому проблема. Рішення було трохи складніше, видаліть відповідний каталог з моєї робочої копії (копіюючи його десь в іншому місці), запустіть рекурсивне оновлення, а потім з’єднайте два каталоги разом вручну.

Редагувати: Опси - вже відповів орган запитання. І тут я був усій схвильований, що знав відповідь на питання без відповіді :)


@Andrew - ну ти правильно відповів на питання ... @Sergio повинен був відповісти на власне запитання.
Джош

8

У мене була схожа проблема з MKACTIVITY на googlecode. Це було тому, що я перевірив сховище з http :, але для реєстрації потрібні https :.


Чудовий улов - я ось-ось збирався розв'язати лють нетерплячого програміста на своїй машині. :) Вам або потрібно повторно перевірити папку з https: (або якщо у вас підступно очистити папку, окрім .svn, змінити вміст .svn / entries, що має URL з http => https. Тепер на екрані фіксації відображатиметься URL-адреса https.)
Gishu


5

Я отримав таку ж помилку і вдалося її вирішити:

  1. SVN Перейменуйте проблемний каталог на 'foo', або будь-що інше
  2. SVN Коміт
  3. SVN Перейменуйте назад до потрібного імені
  4. SVN Коміт

Я не впевнений, чи працює це у всіх випадках, але це простіше, ніж видалення батьківського каталогу.


Це просте рішення вирішило мою проблему. Дуже дякую! :)
consuela

4

Чи ваше сховище svn дозволяє здійснювати комісії через HTTP? Деякі сховища, наприклад SourceForge, дозволяють анонімно оформляти реєстрацію через HTTP, але вимагають від розробників реєстрації через svn та SSH.


3

У моєму випадку у мене виникли проблеми з перевіркою файлів у папці. Я слідував крокам, які Серхіо окреслив, з кількома змінами.

  1. Скопійовано проблемний батьківський каталог.
  2. Видалені файли .svn у скопійованому каталозі
  3. svn delete / parent_directory
  4. Здійснити
  5. Створіть новий каталог у репо
  6. Здійснити
  7. Переміщення підкаталогів з скопійованого каталогу в репо
  8. Здійснити
  9. Скопіюйте окремі файли
  10. Здійснити

У мене було кілька файлів, з якими у мене виникли проблеми. Я залишив їх із сховища, але відтворив їх з новою назвою.


2

У мене була ця проблема, коли я видаляв каталог SVN, а потім відтворював його, коли я робив новий доданий каталог, SVN спричинив цю помилку. Я вирішив проблему, запустивши SVN в новій доданій директорії, а потім вирішив конфлікти вручну .


1

Використовуючи Unfuddle, розміщену службу svn, я неодноразово бачу цю помилку, коли .svn трамбується шляхом копіювання файлів у пошуковій системі OS X. Заклик svn, який працював на мене:

  • повернути
  • оновлення
  • видаліть папку за допомогою віддаленого URL-адреси
  • додайте та закріпіть папку

0

У моєму випадку я додав новий каталог, який мій локальний (клієнтський) метадані вважав, що вже є на сервері, і очищення не виправляло його. Я створив резервну копію всіх нових та модифікованих файлів, видалив усе (крім папки root .svn), запустив Update для відновлення файлів та скопіював у каталог нові та модифіковані файли, які я створив. Я знову додав нові файли і завершився успішно.


0

У Eclipse це легко виправити.

Команда> Перехід на інший тег / гілку

Виберіть, повністю рекурсивну та встановіть прапорець Змінити робочу копію на задану глибину

Натисніть OK

Змінюється значок папки. Клацніть правою кнопкою миші та (команда>) Позначити вирішено.

Це все, тепер ви можете взяти на себе зобов’язання.


Майте на увазі, що Eclipse - це інструмент розробки, а насправді не центр уваги ServerFault.
Андрій Б

0

Зробіть резервну копію папки.
Видаліть папку в сховищі (використовуючи Repo-браузер).
Зробіть ще раз.

Добре працює для мене.
Маркус


0

У мене була подібна проблема, я створив резервну копію каталогу (тільки для безпеки), ніж оновити папку svn. після цього я могла знову здійснити. (і не використовується моя резервна копія)


-1

У мене виникла проблема з e175002 200 ОК. Але я прочитав, що шлях у повідомленні про помилку говорив про неправильний сервер, тому URL-адреса мого стовбура була не найкращою ( http: // localhost: 80 / path / to / my / trunk / )… зачекайте! LOCALHOST ?! ... І тепер я розумію, що це тому, що на першому обороті мої налаштування надіслали мої файли проекту на місце мого репо локально ... Тож на першому обороті переконайтеся, що ваші налаштування для IP вашого сервера не помиляються, оскільки після цього ... ваш РЕПО міститиме неправильну інформацію, і вам доведеться знайти спосіб змінити ті погані налаштування на ньому або на кожному клієнті, який хоче використовувати ваше репо вперше.

Моє виправлення полягало в тому, щоб перевірити кожну папку мого проекту…. у кожній папці є папка .svn, яка зберігає інформацію, а на кожній папці .svn файл, який називається "записи" ... У цьому файлі є шлях до сервера, я замінив поганий рядок на хороший IP у всіх записаних записах у всіх .svn папках. І тоді більше не буде помилок.

Сподіваюся, це допомагає. :) вибачте, якщо важко зрозуміти мій пост ^^ 'Я намагаюся більше.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.