อัปเดตมีนาคม 2556
Git 1.8.2เพิ่มความเป็นไปได้ในการติดตามสาขา
" git submodule
" เริ่มเรียนรู้โหมดใหม่เพื่อรวมเข้ากับส่วนปลายของสาขาระยะไกล (ตรงข้ามกับการผสานรวมกับคอมมิตที่บันทึกไว้ใน gitlink ของ superproject)
# add submodule to track master branch
git submodule add -b master [URL to Git repo];
# update your submodule
git submodule update --remote
หากคุณมีโมดูลย่อยอยู่แล้วตอนนี้คุณต้องการติดตามสาขาโปรดดู " วิธีสร้างโมดูลย่อยที่มีอยู่ติดตามสาขา "
นอกจากนี้โปรดดูบทแนะนำของ Vogella เกี่ยวกับโมดูลย่อยสำหรับข้อมูลทั่วไปเกี่ยวกับโมดูลย่อย
บันทึก:
git submodule add -b . [URL to Git repo];
^^^
ดูgit submodule
หน้าคน :
ค่าพิเศษ.
ที่ใช้ในการแสดงให้เห็นว่าชื่อของสาขาใน submodule ที่ควรจะเป็นชื่อเดียวกับชื่อสาขาในปัจจุบันที่เก็บในปัจจุบัน
ดูการกระทำ b928922727d6691a3bdc28160f93f25712c565f6 :
submodule add
: หาก--branch
ได้รับให้บันทึกในรูปแบบ.gitmodules
สิ่งนี้ช่วยให้คุณบันทึกsubmodule.<name>.branch
ตัวเลือกได้อย่างง่ายดาย.gitmodules
เมื่อคุณเพิ่มโมดูลย่อยใหม่ ด้วยแพทช์นี้
$ git submodule add -b <branch> <repository> [<path>]
$ git config -f .gitmodules submodule.<path>.branch <branch>
ลดเป็น
$ git submodule add -b <branch> <repository> [<path>]
ซึ่งหมายความว่าจะโทรไปในอนาคต
$ git submodule update --remote ...
จะได้รับการอัปเดตจากสาขาเดียวกับที่คุณใช้ในการเริ่มต้นโมดูลย่อยซึ่งโดยปกติจะเป็นสิ่งที่คุณต้องการ
ลงนามโดย: W. Trevor King
คำตอบเดิม (กุมภาพันธ์ 2555):
โมดูลย่อยคือการคอมมิตเดียวที่อ้างอิงโดย repo หลัก
เนื่องจากเป็น Git repo ของตัวเอง "ประวัติของการกระทำทั้งหมด" จึงสามารถเข้าถึงได้ผ่านทางgit log
โมดูลย่อยนั้น
ดังนั้นเพื่อให้ผู้ปกครองติดตามการกระทำล่าสุดของสาขาย่อยที่กำหนดโดยอัตโนมัติก็จะต้อง
- cd ในโมดูลย่อย
- git fetch / pull เพื่อให้แน่ใจว่ามีการคอมมิตล่าสุดในสาขาที่ถูกต้อง
- cd กลับใน repo หลัก
- เพิ่มและคอมมิตเพื่อบันทึกคอมมิตใหม่ของโมดูลย่อย
gitslave (ที่คุณดูแล้ว) ดูเหมือนจะเหมาะสมที่สุดรวมถึงการดำเนินการคอมมิตด้วย
เป็นเรื่องที่น่ารำคาญเล็กน้อยที่จะทำการเปลี่ยนแปลงในโมดูลย่อยเนื่องจากข้อกำหนดในการตรวจสอบไปยังสาขาย่อยที่ถูกต้องทำการเปลี่ยนแปลงกระทำจากนั้นไปที่โครงการขั้นสูงและทำการคอมมิต (หรืออย่างน้อยก็บันทึกตำแหน่งใหม่ของ โมดูลย่อย)
ทางเลือกอื่น ๆ ที่มีรายละเอียดที่นี่