Ottieni la data di creazione di uno stash


227

C'è un modo per dire quando è stata creata una scorta?

git stash listelenca solo gli stash e git stash show XXXXXXmostra tutti i file e le modifiche, ma non la data della creazione dello stash.

Risposte:


362

Provare:

git stash list --date=local

Dovrebbe stampare qualcosa del tipo:

stash@{Thu Mar 21 10:30:17 2013}: WIP on master: 2ffc05b Adding resource

7
Posso aggiungere un'opzione da qualche parte nel mio .gitconfig per rendere questa visualizzazione predefinita?
Trevoke,

2
@Trevoke Hm, non che ne sia a conoscenza. Il migliore che ho trovato è stato questo nabble: git.661346.n2.nabble.com/…
Igor

9
Io preferisco git stash list --date=relative. Degno di nota è che la --datesta venendo dal git logcomando, non stashper sé, vedi qui per i possibili --datevalori: stackoverflow.com/questions/7853332/git-log-date-formats
thnee

7
@Trevoke Ho aggiunto un alias [alias] stashlist = "stash list --date=local" al mio file ~ / .gitconfig
user848337

5
git stash list --date=shortsolo per la data, nel formato AAAA-MM-GG a larghezza fissa che è facile da scansionare visivamente.
Tor Klingberg,

39

È possibile utilizzare --pretty=formatper raggiungere questo obiettivo. Ad esempio, questo produce un elenco di stash che include un tempo relativo:

git stash list --pretty=format:"%C(red)%h%C(reset) - %C(dim yellow)(%C(bold magenta)%gd%C(dim yellow))%C(reset) %<(70,trunc)%s %C(green)(%cr) %C(bold blue)<%an>%C(reset)"

Ho questo set nella [alias]sezione del mio ~/.gitconfigfile, in modo da poterlo associare a un semplice slcomando:

[alias]
        co = checkout
        lg = log --graph --pretty=format:\"%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset\" --abbrev-commit
        rl = reflog --pretty=format:\"%Cred%h%Creset %C(auto)%gd%Creset %C(auto)%gs%C(reset) %C(green)(%cr)%C(reset) %C(bold blue)<%an>%Creset\" --abbrev-commit
        sl = stash list --pretty=format:\"%C(red)%h%C(reset) - %C(dim yellow)(%C(bold magenta)%gd%C(dim yellow))%C(reset) %<(70,trunc)%s %C(green)(%cr) %C(bold blue)<%an>%C(reset)\"

(Puoi vedere che ho anche markup simili per loge reflog)

Ecco come appare: git stash list

Se si desidera mostrare la data effettiva, anziché un'ora relativa, sostituirla %(cr)con %(ci).


17

git show stash@{0} stampa anche la data, insieme alle altre informazioni.


1
Ah stavo usando l'abbreviazione di 6 caratteri, forse quello era il problema. Penso che abbia anche lanciato un errore quando ho provato quel comando, ma sono su Windows, quindi è un altro problema :).
Jason,

3
Ah, Windows. Cercare di usare git su Windows di solito mi porta a voler defenestrare il mio laptop;)
bcmcfc

Non sembra stampare la data con Git 2.8.3.
Elijah Lynn,

@ElijahLynn Non ho un 2.8.3. per provare ma stampa un commit completo su 2.9
bcmcfc
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.