LoginSignup
1
2

More than 5 years have passed since last update.

Gitのリモートリポジトリに任意の日時のコミットを作りたい

Last updated at Posted at 2017-10-28

実現すること

Gitのリモートリポジトリに任意の日時のコミットを作ります。
Gitには、Commit Date, Author Dateがあるため、両方変更します。

手順

  1. ローカルリポジトリにコミット
     
  2. PCの時刻を変更
    Commit Dateはammendした時刻になります。ammendする前にPCの時刻を変更しておきます。
     
  3. ローカルリポジトリのコミットを任意の日時に変更
    Author Dateの変更は"--date"オプションをつけて"--ammend"します。
     
  4. ローカルリポジトリをリモートにプッシュ

※ Commit Date, Author Date共に変更する場合はPCの時刻変更だけでOKです。

動作確認環境

  • macOS High Sierra
  • git version 2.13.5

任意の日時に変更する方法

$ git commit --amend --date "Fri, 10 Nov 2017 14:33:41 +0900"

現在の日時に変更する方法

$ git commit --amend --date "`date -R`"

リモートリポジトリの過去の履歴の書き換え方法

$ git rebase -i <変更したいコミットの1つ前のコミットID>

修正したいコミットをpickからeditに変更

$ git commit --amend --date "`date -R`"
$ git rebase --continue

ローカルの履歴書き換え作業を必要回数繰り返す。

リモートのブランチを削除してからプッシュ。
チームメンバーには強制プルしてもらう。

$ git reset --hard origin/<ブランチ名>
1
2
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
2