LoginSignup
1
1

More than 3 years have passed since last update.

GitHubでリモートとローカルのコミット時間がずれるとき

Posted at

はじめに

開発環境については以下の通りです。
OS:CentOS
仮装環境:vagrant

事象

今回、一人でアプリケーションを作成している最中に
ローカル環境からGitHub上にあげたコミットメッセージの日付が2日前の日付で更新されるという現象が起きました。
解決するまでの流れを備忘録として残しておきます。

解決までの流れ

まず、GitHub上で何か悪さしているのではないかと思い、「git 日時ずれる」などで検索かけてみましたが、日付が9時間ずれている場合の対処などは見つけることができましたが、2日もずれるという記事が全然見つかりませんでした。

git上での日時がずれる事象の記事を読んでいる時に、ntpというワードがでてきたので、これはgitではなく仮装環境のvagrantの設定日時がおかしいという事に気がつきました。

仮装環境に入りターミナルで以下確認すると、確かに2日前の日付となっており、
ここを変えてあげれば改善することが分かりました。(正常日時は2020/4/7 17:30頃)

$ date
Sun Apr  5 07:22:16 UTC 2020

対処法

vagrant関連で検索を行うと、すぐに対処法に辿りつくことができました。
結論からいうと今回の事象は、システム時刻がUTCになってしまっていることが原因でした。

UTCになっているかいないかは、以下で確認ができます。

$ date
Sun Apr  5 07:22:16 UTC(←ここで確認できます。) 2020

 
今回行なったことは、仮装環境上で以下2つのコマンドを実行しました。

$ sudo rm /etc/localtime
$ sudo ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

①「etc」配下にある「localtime」ファイルを削除
②「/usr/share/zoneinfo/Asia/Tokyo」のシンボリックリンクを「etc」配下に「localtime」として作成する。

 

vagrantを再起動し、確認する。

$ date
Tue Apr  7 18:36:26 JST 2020

UTCからJSTに変更されたことと、日時も問題なく戻りました。

軽く補足。UTCとJSTについて

UTCは”Universal Time”の略で、世界共通の標準時間と定めているもの。
JSTは”Japan Standard Time”の略で、日本の標準時間と定めているもの。
上記の通り、それぞれ大きく違いがあります。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1