ฉันแค่พยายามเปลี่ยนแปลง Git master จากที่อ่านมาดูเหมือนว่าจะมีแนวคิดที่จะลบไฟล์ล็อค ข้อความระบุว่า:
ตรวจสอบให้แน่ใจว่าไม่มีกระบวนการ Git อื่น ๆ กำลังทำงานอยู่และลบไฟล์ด้วยตนเอง
อาจมีใครรู้บ้างว่าจะลบไฟล์ไหนและจะลบอย่างไร
ฉันแค่พยายามเปลี่ยนแปลง Git master จากที่อ่านมาดูเหมือนว่าจะมีแนวคิดที่จะลบไฟล์ล็อค ข้อความระบุว่า:
ตรวจสอบให้แน่ใจว่าไม่มีกระบวนการ Git อื่น ๆ กำลังทำงานอยู่และลบไฟล์ด้วยตนเอง
อาจมีใครรู้บ้างว่าจะลบไฟล์ไหนและจะลบอย่างไร
C:\etc\.git\index.lock
เหมือนไฟล์อื่น ๆ
คำตอบ:
ไฟล์ที่เป็นปัญหานั้นน่าจะปลอดภัย.git/index.lock
และควรลบออกหากคุณไม่มีกระบวนการคอมไพล์อื่น ๆ ที่กำลังทำงานอยู่ ตรวจสอบให้แน่ใจว่าคำสั่ง git-svn ไม่ค้าง
ปล. วิธีปกติของฉันในการแก้ไขปัญหา git-svn คือการดึงที่เก็บใหม่ ใช้เวลานาน แต่คุณสามารถทำควบคู่ไปกับการพยายามแก้ไขปัญหาได้ มีการแข่งขันเล็กน้อยระหว่างคุณและคอมไพล์ แน่นอนวิธีนี้ใช้ได้เฉพาะเมื่อคุณไม่ได้ยกเลิกการกระทำ
การลบ
index.lock
ไฟล์อย่างที่ Schwern ระบุจะช่วยแก้ปัญหานี้ได้
คุณสามารถลบออกได้โดยการเรียกใช้ rm -f ./.git/index.lock
rm
คำสั่งที่ใช้ในการลบ (Delete) ไฟล์และไดเรกทอรี
-f
ย่อมาจากแรงที่บอกคอมพิวเตอร์ของคุณจะลบไฟล์โดยไม่ต้องแจ้งให้ยืนยัน
สำหรับผู้ใช้ "GUI" อย่างฉัน
เปิด Git Extension แล้วเลือกที่เก็บ (ถ้ามีมากกว่าหนึ่ง) เลือก "การตั้งค่า" จากเมนูด้านบนจากนั้น "Git Maintenance" จากนั้นคลิกที่ "Delete Index Lock"
Git Extensions: Settings-> Git Maintenance-> Delete Index Lock
คุณได้เปิดคอมมิตในแท็บอื่นในเทอร์มินัลแล้ว
นอกจากนี้ยังอาจเกี่ยวข้องกับไฟล์ * .lock ใด ๆ ใน. git /
ตรวจสอบและลบออก คุณสามารถใช้:rm -f ./.git/*.lock
คำตอบที่ให้โดย @Joel ช่วยได้ยกเว้นว่าสำหรับผู้ใช้ windows คุณอาจต้องเปิดใช้งานการแสดงไฟล์ / โฟลเดอร์ที่ซ่อนอยู่เพื่อเข้าถึงโฟลเดอร์. gitที่มีไฟล์index.lockอยู่ ใช้ลิงค์นี้ในกรณีที่คุณไม่ทราบวิธีเปิดใช้งานโฟลเดอร์ที่ซ่อนอยู่
การลบไฟล์ index.lock เช่น Schwern ระบุจะช่วยแก้ปัญหานี้ได้
คุณสามารถลบออกได้โดยรัน rm -f ./.git/index.lock
คำสั่ง rm ใช้เพื่อลบ (ลบ) ไฟล์และไดเร็กทอรี
-f ย่อมาจากแรงซึ่งบอกให้คอมพิวเตอร์ของคุณลบไฟล์โดยไม่ต้องแจ้งให้ยืนยัน
ยังไม่ทำงานหมายถึงเปิดคอมไพล์ผ่าน git bash แทนที่จะทำในเทอร์มินัล