GitHub utilise une stratégie qui implique le modèle de décalage date-heure. Lorsque vous effectuez une validation, l'horodatage inclut votre décalage par rapport à l'UTC.
Vous pouvez le voir dans la documentation de l'API pour les validations . L'exemple qu'ils montrent utilise un horodatage de validation "2010-04-10T14:10:01-07:00"
. Il s'agit d'une représentation ISO8601 valide d'un décalage date-heure. Pour la personne effectuant le commit, c'était le 10 avril 2010 à 14:10:01. L'élément apparaîtrait sur son calendrier de validation pour le samedi 10 avril.
Git et GitHub n'essaient pas de normaliser ces données par rapport au décalage de la visionneuse, mais ils en tiennent compte lors du calcul des chaînes de temps relatives. Par exemple, il y a un commit sur un projet sur lequel je travaille qui dit qu'il a été fait "il y a 1 heure". Il est 1 h 30, mais lorsque je survole ce texte, il semble qu'il ait été fait à 2 h 30. Comment est-ce possible? Parce que mon décalage est actuellement de -07: 00 et que la personne qui a effectué la validation a un décalage de -05: 00.
Il n'y a donc pas de première heure à l'échelle du système pour le début d'une journée. Deux validations effectuées au même moment précis peuvent apparaître sur deux jours différents, même sur le même calendrier, si elles ont été effectuées par des personnes dans des fuseaux horaires différents. En d'autres termes, un "jour GitHub" est une date de calendrier "flottante" virtuelle qui s'aligne sur le committer - pas nécessairement le spectateur.
Matt Johnson-Pint
la source