Dopo aver eseguito git filter-branch
, come ottengo un elenco di vecchi SHA di commit come riscritti da filter-branch ai loro nuovi SHA di commit corrispondenti?Come posso ottenere un elenco di vecchi -> nuovi SHA di commit riscritti da 'git filter-branch'?
Per esempio, qualcosa di simile a:
b19fd985746c1f060f761d42d353e387bec243fb -> c8ab40ef9bae3b58642a8d1e5b90720d093a60b5
c5ebba1eeb92ca76c0effa32de14178ec7f07db6 -> 4d5a9958b98dbcfa47ce1354bb2af4cc77904639
705f71543235b872ca3e1067538e36d14044429d -> d2aafbd6e5b91955b62dee34f4a0abf0171ba016
Se la colonna di sinistra è l'elenco dei originale SHAs, e la colonna di destra sono i nuovi SHAs dopo essere stato riscritto dal filtro-ramo.
Vedo che lo man page per il ramo filtro menziona una funzione map
, ma non capisco se sia utile qui, o se lo è, come usarlo.
Grazie per il vostro aiuto!
Impressionante, grazie mille !! Anche la -n è stata stampata per qualche motivo, quindi l'ho tolto. Non mi interessa che l'output sia su linee alternate. Non preoccuparti, questo è * non * un repo pubblico. :-) –
Oh, e sembra che $ GIT_COMMIT sia documentato: "la variabile d'ambiente $ GIT_COMMIT verrà impostata per contenere l'id del commit che viene riscritto" –
Ah, buono. Questo è rassicurante - mi rende molto meno preoccupato che questo semplicemente smetterà di funzionare magicamente con la prossima versione di Git. :-) – impl