Quello che sto cercando di fare è un controllo della versione. Voglio assicurarmi che il codice rimanga aggiornato su una versione minima. Quindi ho bisogno di un modo per sapere se il ramo corrente contiene un commit specificato.
git merge-base --is-ancestor
. L'attuale ramo contiene C se C è un antenato di HEAD
, quindi:if git merge-base --is-ancestor $hash HEAD; then echo I contain commit $hash; else echo I do not contain commit $hash; fi
/bin/true
è stato originariamente implementato come exit 0
e /bin/false
come exit 1
. (Le conchiglie moderne sono state integrate.)