2016-04-12 12 views
0

Shell_exec() işlevini kullanarak php'den "git log" komutunu çalıştırıyorum ve aşağıdaki yanıtı alıyorum. Yanıtı nasıl ayrıştırabilirim ve hash ve taahhüt mesajını nasıl alabilirim?Git günlüğünden gelen yanıt nasıl ayrıştırılır? Hash ve commit mesajını almam gerekiyor

 
commit baedfa411c58584c4a98f3a632b7f3231500f92c 
Author: XYZ 
Date: Tue Apr 12 23:04:33 2016 +0530 

commiting 3rd commit 

commit 251654c5f6f256fe6e23c2c85f1a70594aae00d4 
Author: XYZ 
Date: Tue Apr 12 22:37:21 2016 +0530 

commiting 2nd commit 

commit 3be3198a20d902e24e6b187cd0666ed0d5ee6c4d 
Author: XYZ 
Date: Tue Apr 12 22:34:31 2016 +0530 

initial commit 
+1

, git log' 'çıkışından şey ayrıştırmak etmeyin. Bunun yerine, "git rev-list" gibi alt düzey Git komutlarına güvenin. – Jubobs

cevap

2

kullanım git log --oneline yerine git log

2

Seni ne yapabilirsiniz:

git log --oneline --format="%H %s" 

Eğer her explode() değerleri arasında bazı anahtar ekleyip kullanabilirsiniz php bu çıktıyı kullanmanız gerekiyorsa değerleri almak için satır. Örneğin: ::: de sınırlayıcı olduğu yerlerde

git log --oneline --format=%H:::%s 

, php kullanımı patlayabilir.

O yardımcı olur umarım: D gelecekte Git sürümlerde değişebileceği

İlgili konular