Holen Sie sich das Erstellungsdatum eines Stashs

227

Gibt es eine Möglichkeit zu erkennen, wann ein Versteck erstellt wurde?

git stash listlistet nur die Stashes auf und git stash show XXXXXXzeigt alle Dateien und Änderungen an, nicht jedoch das Datum der Stash-Erstellung.

Jason
quelle

Antworten:

362

Versuchen:

git stash list --date=local

Es sollte etwas drucken wie:

stash@{Thu Mar 21 10:30:17 2013}: WIP on master: 2ffc05b Adding resource
Igor
quelle
7
Kann ich irgendwo in meiner .gitconfig eine Option hinzufügen, um dies zur Standardanzeige zu machen?
Trevoke
2
@ Trevoke Hm, das weiß ich nicht. Das Beste, was ich finden konnte, war dieses Nabble: git.661346.n2.nabble.com/…
Igor
9
Ich bevorzuge git stash list --date=relative. Bemerkenswert ist, dass das --datevom git logBefehl kommt, nicht von sich stashselbst. Hier finden Sie mögliche --dateWerte: stackoverflow.com/questions/7853332/git-log-date-formats
thnee
7
@ Trevoke Ich habe einen Alias [alias] stashlist = "stash list --date=local" zu meiner ~ / .gitconfig-Datei
hinzugefügt
5
git stash list --date=shortGeben Sie nur das Datum im Format JJJJ-MM-TT mit fester Breite an, das sich leicht visuell scannen lässt.
Tor Klingberg
39

Sie können verwenden --pretty=format, um dies zu erreichen. Dies erzeugt beispielsweise eine Stash-Liste, die eine relative Zeit enthält:

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)"

Ich habe dies im [alias]Abschnitt meiner ~/.gitconfigDatei festgelegt, damit ich es an einen einfachen slBefehl binden kann :

[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)\"

(Sie können sehen, dass ich auch ähnliche Markups für logund habe reflog)

So sieht es aus: Git Stash Liste

Wenn Sie das tatsächliche Datum anstelle einer relativen Uhrzeit anzeigen möchten, ersetzen Sie es %(cr)durch %(ci).

Lee Netherton
quelle
17

git show stash@{0} druckt auch das Datum zusammen mit den anderen Informationen aus.

bcmcfc
quelle
1
Ah, ich habe die Abkürzung mit 6 Zeichen verwendet, vielleicht war das das Problem. Ich denke, es hat auch einen Fehler ausgelöst, als ich diesen Befehl ausprobiert habe, aber ich bin unter Windows, also ist das ein ganz anderes Problem :).
Jason
3
Ah, Windows. Der Versuch, Git unter Windows zu verwenden, führt mich normalerweise dazu, meinen Laptop verteidigen zu wollen;)
bcmcfc
Scheint das Datum nicht mit Git 2.8.3 zu drucken.
Elijah Lynn
@ElijahLynn Ich habe keine 2.8.3. zu testen, aber es druckt ein volles Commit am 2.9
bcmcfc