ฉันต้องการเปลี่ยนชื่อไดเรกทอรีของ submodule Git ใน superproject Git ของฉัน
สมมติว่าฉันมีรายการต่อไปนี้ใน.gitmodulesไฟล์ของฉัน:
[submodule ".emacs.d/vimpulse"]
path = .emacs.d/vimpulse
url = git://gitorious.org/vimpulse/vimpulse.git
ฉันต้องพิมพ์อะไรเพื่อย้าย.emacs.d/vimpulseไดเรกทอรีไป.emacs.d/vendor/vimpulseโดยไม่ต้องลบออกก่อน (อธิบาย
ที่นี่และที่นี่ ) แล้วเพิ่มใหม่อีกครั้ง
Git ต้องการเส้นทางทั้งหมดในแท็ก submodule หรือไม่
[submodule ".emacs.d/vimpulse"]
หรือมันเป็นไปได้ที่จะเก็บเพียงแค่ชื่อของโครงการย่อยหรือไม่
[submodule "vimpulse"]
git mvสิ่งนี้ได้ ใช้deinitแล้วrm ตามที่ระบุไว้stackoverflow.com/a/18892438/8047
git mv เพียงแค่ทำงานกับ submodules ด้วยและไม่จำเป็นต้องมีอะไรอีก
1.8.5submodules เคลื่อนไหวได้รับการสนับสนุนอย่างเป็นธรรมชาติโดยใช้git mvคำสั่ง ( จากบันทึกประจำรุ่นแรกที่เชื่อมโยงโดย @thisch ตัวเอง) นอกจากนี้ยังตอบที่นี่
git mvย้าย submodule ในพื้นที่ทำงานและอัปเดตไฟล์ submodule .git อย่างถูกต้อง แต่โฟลเดอร์ย่อยภายในโฟลเดอร์. git / modules ของ repo หลักยังคงเหมือนเดิม - ตกลงไหม (ฉันใช้ git 2.19.0 บน Windows)
git mvคำสั่งในคำถาม