Ho uno script che deve fare riferimento al commit iniziale in un repository. git ha il riferimento speciale HEAD
, ma non ha il corrispondente TAIL
. Non riesco a trovare nulla in git help rev-parse
che sembrerebbe aiutarmi.Come fare riferimento al commit iniziale?
Ecco quello che mi piacerebbe fare:
git show TAIL
Ecco una possibilità che ho:
git show `git log --reverse | if read a commit ; then echo $commit ; fi`
Questo è abbastanza hacky e dipende l'output di git log non cambiare.
In questo momento ho appena taggato il commit iniziale e lo uso come refspec. Tuttavia, mi piacerebbe rilasciare uno strumento generale, quindi non è una grande opzione.
Nessun pipe, tutte le radici: 'git rev-list --max-parents = 0 HEAD' – wowest
@wowest: IIRC non c'erano opzioni' --max-parents' quando I Stavo scrivendo questa risposta. Grazie per l'aggiornamento! –
Per me, 'git rev-list HEAD | tail -n 1' e 'git rev-list --max-parents = 0 HEAD' non restituiscono lo stesso valore di hash per me. Quello che usa '--max-parents = 0' sta in effetti ottenendo il commit iniziale. Ho solo pensato di far notare che quest'ultimo sembra più affidabile. – jbranchaud