2012-02-22 39 views
6

Tôi có một cam kết về chủ, băm 6877146, cập nhật một mô-đun con.Nhật ký Git không hiển thị thay đổi submodule

$ git show 6877146 
commit 6877146f1781bfbd4ec3ae2a27121a606f5f688e 
Author: [snip] 
Date: Wed Feb 22 16:10:20 2012 +0000 

    updating potatobase 

diff --git a/potatobase b/potatobase 
index 5877e2c..b77ba62 160000 
--- a/potatobase 
+++ b/potatobase 
@@ -1 +1 @@ 
-Subproject commit 5877e2c2d82645fa44f121884291ee48cf24584d 
+Subproject commit b77ba624d6a1c5e62d434ad2d06383604aeab431 

này cam kết là trên chi nhánh tổng thể, mà tôi hiện đã kiểm tra ra:

$ git branch -a --contains 6877146 
* master 
    remotes/origin/HEAD -> origin/master 
    remotes/origin/master 
    remotes/origin/ticket-1479-refactor-blade-json-functions 

Tuy nhiên, làm git log trên submodule không hiển thị các cam kết:

$ git log potatobase | grep 6877146 
$ 

Nếu tôi kiểm tra rõ ràng cam kết này, thì trong nhật ký:

$ git checkout 6877146 
$ git log potatobase | grep 6877146 
commit 6877146f1781bfbd4ec3ae2a27121a606f5f688e 

Tại sao cam kết này không được hiển thị trong nhật ký khi tôi đã kiểm tra tổng thể? Nó đã được hợp nhất thành chủ:

$ git checkout master 
$ git merge 6877146 
Already up-to-date. 
$ 
+0

Tại sao điều này đóng lại? Đó là một câu hỏi hợp lệ. – Ries

+0

@Ries Tôi đã yêu cầu đóng cửa. Tôi kết luận rằng đó là một lỗi trong chính git mà tôi chỉ có thể tái tạo trên một repo rất lớn và lộn xộn. Tôi không nghĩ rằng những người dùng SO khác sẽ gặp phải vấn đề tương tự. –

Trả lời

2

Cam kết cập nhật một mô-đun con chỉ thay đổi git sửa đổi sẽ kiểm tra khi bạn khởi động/cập nhật mô-đun con. Id cam kết của cam kết đó không liên quan đến các id cam kết của chính các mô-đun con.

+1

Chắc chắn. Nhưng tôi không mong đợi để xem 5877e2 hoặc b77ba6 trong dự án mẹ. Tuy nhiên, 6877146 là một cam kết về phụ huynh. 'git log potatobase' hiển thị các commit trên parent (các commit đã thay đổi bản sửa đổi của submodule), nó chỉ thiếu 6877146. –

Các vấn đề liên quan