GitHub verwendet eine Strategie, die das Datum-Zeit-Versatzmuster beinhaltet. Wenn Sie ein Commit durchführen, enthält der Zeitstempel Ihren Versatz von UTC.
Sie können dies in den API-Dokumenten für die Commits sehen . Das dort gezeigte Beispiel verwendet einen Commit-Zeitstempel von "2010-04-10T14:10:01-07:00"
. Dies ist eine gültige ISO8601-Darstellung eines Datums- / Zeitversatzes. Für die Person, die das Commit ausführt, war es der 10. April 2010 um 14:10:01 Uhr. Der Artikel wird in seinem Festschreibungskalender für Samstag, den 10. April, angezeigt.
Git und GitHub versuchen nicht, diese Daten auf den Versatz des Viewers zu normalisieren, berücksichtigen dies jedoch bei der Berechnung der relativen Zeitzeichenfolgen. Zum Beispiel gibt es ein Commit für ein Projekt, an dem ich arbeite, das besagt, dass es "vor 1 Stunde" erstellt wurde. Es ist 1:30 Uhr meiner Zeit, aber wenn ich mit der Maus über diesen Text schwebe, sieht es so aus, als wäre er um 2:30 Uhr erstellt worden. Wie kann das sein? Weil mein Offset derzeit -07: 00 ist und die Person, die das Commit durchgeführt hat, einen Offset von -05: 00 hat.
Es gibt also keine systemweite erste Stunde für den Beginn eines Tages. Zwei Commits, die genau zum gleichen Zeitpunkt getätigt wurden, können an zwei verschiedenen Tagen erscheinen, sogar im selben Kalender, wenn sie von Personen in verschiedenen Zeitzonen gemacht wurden. Mit anderen Worten, ein "GitHub-Tag" ist ein virtuelles "schwebendes" Kalenderdatum, das sich am Committer ausrichtet - nicht unbedingt am Betrachter.