2010-04-01 18 views

risposta

23

L'opzione che stai cercando è --name-status. Come --name-only è in realtà un'opzione git-diff; git-log accetta quelli per determinare come visualizzerà le patch.

git log -n 1 --pretty=oneline --name-status 

o equivalentemente (meno l'intestazione di registro):

git diff --name-status HEAD^ HEAD 

Come isbadawi sottolinea, è anche possibile utilizzare git-WhatChanged. Questo è più o meno git-log con una specifica uscita diff:

git whatchanged -n 1 

Ti potrebbe piacere la versione --name-status meglio, però, dal momento che non mostra tutti gli hash blob, solo gli stati leggibili.

+0

Questo funziona! Ora devo solo scrivere una sceneggiatura per leggere quella riga e scegliere A e D e ho finito. Grazie. – pocketfullofcheese

+1

Esempio di emissione del commit specifico che contiene l'aggiunta ** di un file denominato **. Gitignore ** nel formato di _commit messaggio, nomi e stato dei file modificati_: 'git log --name-status --diff -filter = A --follow .gitignore' – Eido95

Problemi correlati