git commit
numaralı bir kumaş senaryosunu yazmaya çalışıyorum; Ancak, yapılacak hiçbir şey yoksa, git 1
durumundan çıkar. Dağıtım betiği başarısız olarak alır ve çıkar. gerçek başarısızlıklarını algılamak istiyorum, bu yüzden git commit
arızaları için bir battaniye görmezden gelemem. Dağıtımın devam edebileceği, ancak gerçek bir işlem başarısız olduğunda ortaya çıkan hataları yakalayabilmesi için boş taahhütlerin göz ardı edilmesine nasıl izin verebilirim? git commit
adam sayfasındanHata olmadan hiçbir şey yapmaya ne dersin?
def commit():
local("git add -p && git commit")
'git diff' komut dosyası için kullanılmaması gereken bir" porselen "komutudur. En çok istediğin şey 'git diff-index --quiet HEAD || git taahhüdü -m 'bla'. Ayrıca bkz. [Bu cevap] (http://stackoverflow.com/a/2659808/659002). – Holger
Daha fazlasını açıklamak için 'git diff --quiet --exit-code --cached' ile ilgili sorun, yalnızca 1 '(false) olarak değerlendirileceğidir, yalnızca işlem için düzenlenmemiş değiştirilmiş dosyalar (unadded files)). Yükseltilen yorum yeni dosya ve silme işlemlerini hesaba katmak için en iyi çözümdür. –
'git diff-index --quiet HEAD hakkında yorum || git commit -m 'bla' bu soruya cevap olmalı. –