ฉันกำลังเก็บที่เก็บ git หลายแห่งโดยใช้ magit และตัวเลขของพวกเขาก็เพิ่มขึ้นเรื่อย ๆ มีวิธีแจ้ง magit ของโครงการเหล่านี้ทั้งหมดหรือไม่เพื่อที่คำสั่งเดียวจะแสดงสรุปสถานะของแต่ละรายการแทนที่จะเรียกใช้ด้วยตนเองmagit-status
ในแต่ละโครงการ
ฉันกำลังเก็บที่เก็บ git หลายแห่งโดยใช้ magit และตัวเลขของพวกเขาก็เพิ่มขึ้นเรื่อย ๆ มีวิธีแจ้ง magit ของโครงการเหล่านี้ทั้งหมดหรือไม่เพื่อที่คำสั่งเดียวจะแสดงสรุปสถานะของแต่ละรายการแทนที่จะเรียกใช้ด้วยตนเองmagit-status
ในแต่ละโครงการ
คำตอบ:
มีวิธีการแจ้ง magit ของรายการของโครงการทั้งหมดเหล่านี้ ...
ใช่เห็นและmagit-repository-directories
magit-repository-directories-depth
... เพื่อที่คำสั่งเดียวจะแสดงสรุปสถานะของแต่ละคำสั่ง
ในเวลาที่คำถามนี้ถูกถามคำสั่งดังกล่าวไม่ได้อยู่ แต่ตอนนี้มันจะ ลองM-x magit-list-repositories
และดูเอกสารประกอบ : ( https://magit.vc/manual/magit/Repository-List.html )
นอกจากนี้คุณยังสามารถแสดงรายการ submodules M-x magit-list-submodules
ทั้งหมดของซุปเปอร์พื้นที่เก็บข้อมูลในรูปแบบคล้ายกันโดยใช้ หรือคุณสามารถแสดงข้อมูลบางส่วนนั้นโดยตรงในบัฟเฟอร์สถานะโดยใช้:
(magit-add-section-hook 'magit-status-sections-hook
'magit-insert-modules
'magit-insert-unpulled-from-pushremote)
จากนั้นโมดูลทั้งหมดจะแสดงรายการในส่วนที่แยกต่างหาก โมดูลที่มีการเปลี่ยนแปลงมีการระบุไว้ตามปกติในการเปลี่ยนแปลงฉากและการเปลี่ยนแปลง unstaged RETบนโมดูลใด ๆ เหล่านี้แสดงบัฟเฟอร์สถานะสำหรับที่เก็บนั้นและqนำคุณกลับไปที่บัฟเฟอร์สถานะของที่เก็บซุปเปอร์
submodules f mสามารถดึงข้อมูลโดยใช้
mv
ที่เก็บได้ แต่จากนั้นคุณก็ยังคงต้องทำgit submodule add git://<module> <module>
แต่ละอัน แต่อย่างน้อยก็ดีกว่าต้องตั้งค่ารีโมตและสาขาทั้งหมดอีกครั้ง