ข้อผิดพลาดในการโค่นล้ม: (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
โปรดเพิ่มโซลูชันเป็นคำตอบแทนที่จะเพิ่มลงในคำถาม
Sam Cogan

3
ฉันเกลียดการให้ข้อผิดพลาดและหยุด ดูเหมือนเด็กที่กำลังหมุนอยู่ตลอดเวลา ฉันย้อนกลับกว่าเพิ่มแล้วมุ่งมั่นแล้วและเซิร์ฟเวอร์ได้รับการรับรองอย่างน่าอัศจรรย์

สำหรับที่เก็บรหัส google โปรดดู - stackoverflow.com/a/32636072/1406510
nanosoft

คำตอบ:


44

ข้อผิดพลาดนี้มักจะระบุว่าโฟลเดอร์ที่คุณพยายามเพิ่มนั้นมีอยู่แล้วในที่เก็บ - คุณได้ทำการอัปเดตเมื่อเร็ว ๆ นี้หรือคุณได้ทำการเช็คเอาต์แบบไม่เรียกซ้ำเพื่อเริ่มต้นด้วยหรือไม่

ก่อนหน้านี้ฉันพบข้อผิดพลาดนี้ - พบบล็อกที่บอกฉันว่าปัญหาคืออะไร วิธีแก้ปัญหามีความซับซ้อนมากขึ้นเล็กน้อยลบไดเรกทอรีที่เป็นปัญหาจากสำเนาการทำงานของฉัน (คัดลอกที่อื่น) เรียกใช้การปรับปรุงซ้ำแล้วผสานไดเรกทอรีทั้งสองเข้าด้วยกัน

แก้ไข: Opps - ตอบแล้วในเนื้อหาคำถาม และที่นี่ฉันตื่นเต้นมากที่รู้คำตอบของคำถามที่ยังไม่ได้ตอบ :)


@Andrew - ดีคุณตอบคำถามได้อย่างถูกต้อง ... @Sergio ควรตอบคำถามของเขาเอง
Josh

8

ฉันมีปัญหาที่คล้ายกันกับ MKACTIVITY บน googlecode เป็นเพราะฉันได้เช็คเอาต์ที่เก็บด้วย http :, แต่จำเป็นต้องเช็คอิน https:


การจับที่ยอดเยี่ยม - ฉันเพิ่งจะปลดปล่อยความโกรธเกรี้ยวของโปรแกรมเมอร์ใจร้อนในเครื่องของฉัน :) คุณจำเป็นต้องทำการตรวจสอบโฟลเดอร์อีกครั้งด้วย https: (หรือหากคุณแอบลอกโฟลเดอร์ออกยกเว้น. svn ให้แก้ไขเนื้อหาของ. svn / รายการที่มี url จาก http => https ตอนนี้ หน้าจอการส่งข้อมูลจะแสดง https URL)
Gishu


5

ฉันได้รับข้อผิดพลาดเดียวกันและจัดการเพื่อแก้ไข:

  1. SVN เปลี่ยนชื่อไดเรกทอรีที่มีปัญหาเป็น 'foo' หรืออะไรก็ตาม
  2. สัญญา SVN
  3. SVN เปลี่ยนชื่อกลับเป็นชื่อที่คุณต้องการ
  4. สัญญา SVN

ฉันไม่แน่ใจว่าสามารถใช้งานได้ในทุกกรณี แต่จะง่ายกว่าการลบไดเรกทอรีหลัก


ทางออกง่ายๆนั้นแก้ไขปัญหาของฉัน ขอบคุณมาก! :)
consuela

4

ที่เก็บ svn ของคุณอนุญาตการส่งผ่าน HTTP หรือไม่? ที่เก็บบางแห่งเช่น SourceForge อนุญาตการชำระเงินแบบไม่ระบุชื่อผ่าน HTTP แต่ต้องการให้ผู้พัฒนาทำการเช็คอินผ่าน svn และ SSH


3

ในกรณีของฉันฉันมีปัญหาในการตรวจสอบไฟล์ภายในโฟลเดอร์ ฉันทำตามขั้นตอน Sergio ที่ระบุไว้ด้วยการเปลี่ยนแปลงเล็กน้อย

  1. คัดลอกไดเรกทอรีหลักของปัญหา
  2. ลบไฟล์. svn ในไดเรกทอรีที่คัดลอกแล้ว
  3. svn delete / parent_directory
  4. ผูกมัด
  5. สร้างไดเรกทอรีใหม่ใน repo
  6. ผูกมัด
  7. ย้ายไดเรกทอรีย่อยจากไดเรกทอรีที่คัดลอกไปยัง repo
  8. ผูกมัด
  9. คัดลอกแต่ละไฟล์
  10. ผูกมัด

ฉันมีไฟล์สองสามไฟล์ที่ฉันมีความท้าทาย ฉันปล่อยให้พวกเขาออกจากพื้นที่เก็บข้อมูล แต่สร้างพวกเขาด้วยชื่อใหม่


2

ฉันมีปัญหานี้เมื่อฉันลบรูปแบบไดเรกทอรี SVN แล้วสร้างขึ้นใหม่เมื่อฉันยืนยันที่เพิ่มไดเรกทอรีใหม่ SVN ให้ข้อผิดพลาดนี้ ฉันจะแก้ไขปัญหาโดยการทำงาน SVN ขึ้นบนไดเรกทอรีเพิ่มใหม่แล้วการแก้ไขความขัดแย้งด้วยตนเอง


1

การใช้ Unfuddle ซึ่งเป็นบริการ svn ที่โฮสต์ฉันซ้ำ ๆ เห็นข้อผิดพลาดนี้เมื่อ. svn ถูกเหยียบย่ำด้วยการคัดลอกไฟล์ในตัวค้นหา OS X คาถา svn ที่เหมาะกับฉัน:

  • คืนกลับ
  • ปรับปรุง
  • ลบโฟลเดอร์โดยใช้ URL ระยะไกล
  • เพิ่มและส่งโฟลเดอร์

0

ในกรณีของฉันฉันกำลังเพิ่มไดเรกทอรีใหม่ที่เมทาดาทา (ลูกค้า) ของฉันสันนิษฐานว่าอยู่ในเซิร์ฟเวอร์แล้วและการล้างข้อมูลไม่ได้แก้ไข ฉันสำรองไฟล์ใหม่และไฟล์ที่แก้ไขทั้งหมดลบทุกอย่าง (ยกเว้นโฟลเดอร์. svn รูท) รัน Update เพื่อกู้คืนไฟล์และคัดลอกกลับไปยังไดเรกทอรีไฟล์ใหม่และไฟล์ที่แก้ไขที่ฉันสำรองไว้ ฉันเพิ่มไฟล์ใหม่อีกครั้งและยืนยันเรียบร้อยแล้ว


0

ใน Eclipse ง่ายต่อการแก้ไข

ทีม> เปลี่ยนเป็นแท็ก / สาขาอื่น

เลือกเรียกซ้ำทั้งหมดและทำเครื่องหมายเปลี่ยนสำเนาการทำงานเป็นความลึกที่ระบุ

กดตกลง

ไอคอนของโฟลเดอร์เปลี่ยนไป คลิกขวาและ (ทีม>) ทำเครื่องหมายแก้ไขแล้ว

เพียงเท่านี้คุณก็สามารถกระทำได้แล้ว


โปรดทราบว่า Eclipse เป็นเครื่องมือในการพัฒนาและไม่ใช่จุดเน้นของ ServerFault
Andrew B

0

ทำสำเนาสำรองของโฟลเดอร์
ลบโฟลเดอร์ในที่เก็บ (ใช้ Repo-Browser)
กระทำอีกครั้ง

ทำงานได้ดีสำหรับฉัน
มาร์คัส


0

ฉันมีปัญหาที่คล้ายกันฉันสำรองไดเรกทอรี (เพียงเพื่อความปลอดภัย) กว่าอัปเดตโฟลเดอร์ svn หลังจากนั้นฉันสามารถกระทำได้อีกครั้ง (และไม่ได้ใช้การสำรองข้อมูลของฉัน)


-1

ฉันมีปัญหากับ e175002 200 ตกลง แต่ฉันอ่านว่าเส้นทางบนข้อความแสดงข้อผิดพลาดกำลังพูดถึงเซิร์ฟเวอร์ที่ไม่ถูกต้องดังนั้น URL ของลำต้นของฉันจึงไม่ใช่เส้นทางที่ดี ( http: // localhost: 80 / path / to / my / trunk / ) …รอ! LOCALHOST?! ... และตอนนี้ฉันรู้ว่ามันเป็นเพราะในครั้งแรกของฉันการตั้งค่าของฉันส่งไฟล์โครงการของฉันไปยัง repo ของฉันในท้องถิ่น ... ดังนั้นในครั้งแรกของคุณตรวจสอบให้แน่ใจว่าการตั้งค่าสำหรับ IP ของเซิร์ฟเวอร์ของคุณไม่ผิดเพราะหลังจากนั้น ... repo จะมีข้อมูลที่ไม่ถูกต้องและคุณจะต้องหาวิธีแก้ไขการตั้งค่าที่ไม่ดีเหล่านั้นหรือบนไคลเอนต์ทุกคนที่ต้องการใช้ repo ของคุณเป็นครั้งแรก

การแก้ไขของฉันคือการตรวจสอบทุกโฟลเดอร์ในโครงการของฉัน…. ในทุก ๆ โฟลเดอร์จะมีโฟลเดอร์. svn ที่เก็บข้อมูลและในทุก ๆ โฟลเดอร์. svn ไฟล์ชื่อ "รายการ" ... ในไฟล์นี้มีเส้นทางไปยังเซิร์ฟเวอร์ผมเปลี่ยนสายที่ไม่ดีโดย IP ที่ดีในทุกรายการที่เก็บไว้ ในทุก ๆ โฟลเดอร์. svn แล้วไม่มีข้อผิดพลาดเพิ่มเติม

หวังว่ามันจะช่วย :) ขออภัยถ้ามันยากที่จะเข้าใจโพสต์ของฉัน ^^ 'ฉันพยายามมากขึ้น

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.