Câu trả lời ngắn gọn là không. Ý tưởng là bạn biết chắc chắn một cam kết cụ thể của mô-đun con sẽ làm việc với dự án của bạn, và bạn không muốn bất kỳ hành vi không xác định hoặc bất ngờ đến bằng cách nhận được cập nhật trực tiếp. Một môđun con được biểu thị trực tiếp bởi hai thứ: một mục nhập trong các tệp .gitmodules và một gitlink, là một tham chiếu đến SHA1 của cam kết mong muốn của mô-đun con. SHA1, không đổi tên.
Điều bạn đang yêu cầu thực sự dành cho siêu dự án là có không có ý tưởng nội dung nào trong mô hình con. Hãy suy nghĩ về nó: các bản sao khác nhau của dự án của bạn có thể đã cập nhật submodule vào các thời điểm khác nhau, và kết thúc với các phiên bản khác nhau ở đó, và sau đó nếu commit được thực hiện trong dự án của bạn, họ phải ghi lại các commit khác nhau trong submodule. Khi bạn sáp nhập, bạn có thể chỉ cần bỏ qua những gì họ nói và kéo một lần nữa, có lẽ. Upshot là yêu cầu của bạn là tránh toàn bộ ý tưởng của submodules: để biết những gì bạn có. Nếu bạn nói rằng bạn đang sử dụng "chủ", bạn sẽ quay lại hai tháng kể từ bây giờ và không có ý tưởng đó có nghĩa là gì!
Nếu bạn muốn luôn nhận được nhánh chính hiện tại, bạn nên tự mình thực hiện nó. Viết một kịch bản để kéo tất cả các mô-đun con, và chạy nó ngay bây giờ và sau đó, cam kết các phiên bản cập nhật. (Kiểm tra đầu tiên, mặc dù!) Các điểm ở đây là với submodules, cho mỗi cam kết siêu dự án, bạn phải biết chính xác những gì phiên bản của tiểu dự án bạn đang sử dụng. Đó là lựa chọn của bạn bao lâu bạn muốn cập nhật phiên bản của mô-đun con; nó có thể được hàng ngày nếu bạn thích.
Cách khác là thêm (các) thư mục cho mô-đun con vào gitignore của bạn và viết một kịch bản lệnh nhanh để cập nhật chúng (và có lẽ một bản sao để sao chép chúng). Điều này sẽ khiến bạn mất khả năng biết bạn đã có phiên bản nào tại một thời điểm nào đó trong quá khứ.
http://gitref.org/ trang Tham chiếu Git là một cách hay để bắt đầu nếu bạn mới sử dụng git. –
@ Aaher: Đây là một câu hỏi rất cụ thể, không chỉ là một câu nói chung "Tôi mới đến git". – Cascabel
Tôi nghĩ câu trả lời là không. Git lưu trữ tên cam kết khi nó ghi lại thông tin của môđun con, và trong trường hợp của tôi, tôi đã viết một tập lệnh để kéo, thêm, cam kết và đẩy nó thực hiện chính xác những gì tôi muốn nó làm với các mô-đun con. – sinelaw