2012-02-22 6 views
6

Bir alt modemi güncelleyen, 6877146 numaralı bir yardımcı programa sahibim.Git günlüğü, altmodule değişikliklerini göstermiyor

$ 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 

Bu taahhüt Şu anda teslim aldığınız ana dalı üzerinde:

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

Ancak alt modülün üzerine git günlüğünü yapıyor göstermiyor taahhüt:

$ git log potatobase | grep 6877146 
$ 

Bu işlemi açık bir şekilde kontrol edersem, günlükte:

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

Bu taahhüt, master'ı kontrol ettiğimde neden günlükte gösterilmiyor? Zaten usta birleştirilecek oluyor:

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

Bu neden kapatıldı? Onun geçerli bir soru. – Ries

+0

@Ries Kapalı olmasını istedim. Git kendi kendime sadece çok büyük ve dağınık bir repoda çoğaltabildiğim bir hata olduğu sonucuna vardım. Diğer SO kullanıcılarının da aynı sorunla karşılaşacağını düşünmedim. –

cevap

2

A alt modülü güncelleme taahhüt sadece init/submodule güncellediğimde revizyon git ödeme olacak değiştirir. Bu taahhüdün taahhüdü, hiçbir şekilde alt modüllerin kendisinin taahhüt verenleri ile ilgili değildir.

+1

Elbette. Ama ebeveyn projesinde 5877e2 veya b77ba6'yı görmeyi beklemiyorum. Ancak, 6877146 ebeveyn üzerinde bir taahhüttir. 'git log potatobase', ebeveyn üzerinde işlem yapar (alt modülün revizyonunu değiştiren işlemler), sadece 6877146 eksik. –