Betrachten Ich habe verpflichtetgit Squash und bewahren letzten commit Zeitstempel
... -- A -- B -- C
Wenn ich git rebase -i
verwenden, um alle drei Commits in einem Squash, könnten wir
pick A
squash B
squash C
Ich sehe die Folge begehen A
hat seine Original Zeitstempel. Wie könnte es den Zeitstempel von commit C
(der letzte) erben?
Was ich denken kann, ist git commit --amend --date=<new_time>
, aber auf diese Weise muss der Zeitstempel des Commits C
vor Squash oder von Reflog erinnern.
Ich finde den Zeitstempel der letzten Commit ist vernünftiger, weil es zeigt, wenn ich tatsächlich die Arbeit fertig, die in den Commits sind.
Danke.
Warum verwenden Sie 'tformat'? –
@CrendKing: In diesem Fall ist es egal, ob es sich um 'format' oder' tformat' handelt, da das 'tformat'-Newline durch die Befehlsersetzungsregeln der Shell entfernt wird. In 99% der Fälle möchte ich jedoch den endgültigen Zeilenumbruch (oder was auch immer der Terminator ist), da ich normalerweise die benutzerdefinierte Protokollausgabe mit einem Skript analysiere. Um sicherzustellen, dass ich "tformat" gewohnheitsmäßig tue, wenn es darauf ankommt, verwende ich "tformat", auch wenn es keine Rolle spielt. –