2012-07-25 13 views
6

Su GitHub avete questa bella funzionalità in ogni pagina della cartella, elenca il nome del file insieme con l'età dell'ultimo commit su quel file. Questo è simile al comando ls -l.git ls-files con data?

C'è un modo per simulare questo comportamento dalla riga di comando? Qualcosa di simile

git ls-files -l 

Sulla base di sjas answer questo funziona per me

ls | while read aa 
do 
    git log -1 --format="%ai $aa" "$aa" 
done 

risposta

3
$ for a in $(ls); do git log --pretty=format:"%h%x09%an%x09%ad%x09$a" -1 -- "$a"; done 
e76b sjas Tue Jul 24 21:55:20 2012 +0200 bashscripts/ 
68af sjas Wed Jul 25 13:49:26 2012 +0200 links 
83c9 sjas Tue Jul 24 15:21:09 2012 +0200 rndm/ 
aedf sjas Tue Jul 24 15:14:12 2012 +0200 temp/ 
a643 sjas Tue Jul 24 21:48:19 2012 +0200 tips/ 
f71d sjas Tue Jul 24 19:26:20 2012 +0200 todo 

Tratto da https://stackoverflow.com/a/469238/805284

Nel caso in cui questo sembra strano:
mie SHA1 di sono abbreviati a solo 4 numeri via core.abbrev=4 nel mio .gitconfig.

Ma forse avete uso per questo qui:

$ for a in $(ls); do git log --pretty=format:"%h%x09$a%x09%s" -1 -- "$a"; done 
e76b bashscripts/ added pushd/popd/dirs shortcuts!!! 
68af links   fastcommit 
83c9 rndm/   further cleanup 
aedf temp/   tempcommit 
a643 tips/   added disk usage script and pushd/popd annotation 
f71d todo   fastcommit 
+2

@sjas, sono abbastanza sicuro che un copia-incolla del testo dello schermo è molto più semplice di uno screenshot/coltura/caricare! – Shahbaz

+4

Rientranza ogni riga di quattro spazi? SO ha una scorciatoia per questo, il pulsante di codice '{}' nell'editor. – vergenzt