Saya mencoba untuk menulis skrip kain yang melakukan git commit
; namun, jika tidak ada yang perlu dilakukan, git keluar dengan status 1
. Skrip penerapan menganggapnya tidak berhasil, dan berhenti. Saya ingin mendeteksi sebenarnya kegagalan-to-komit, jadi saya tidak bisa hanya memberikan kain selimut mengabaikan untuk git commit
kegagalan. Bagaimana cara mengizinkan kegagalan komit kosong untuk diabaikan sehingga penerapan dapat dilanjutkan, tetapi masih menemukan kesalahan yang disebabkan ketika komit yang sebenarnya gagal?
def commit():
local("git add -p && git commit")
git diff
ini adalah perintah "porselen" yang tidak boleh digunakan untuk pembuatan skrip. Yang paling Anda inginkan adalahgit diff-index --quiet HEAD || git commit -m 'bla'
. Lihat juga jawaban ini .