こちらの記事は2015年09月15日にQiitaに投稿したものを移植したものとなります。

Qiitaからの移植に当たって内容の精査は行っていません。
従って、記事は当時の私の知識や当時の技術そのままです。

背景とか


おもに政治的事情とかでgit使ってない人が資産に変更を加えた場合に、受け取った資産を自分の名前とそのときの日時でコミットしたくないことがあると思います。そういったときに、コミットの「Author」と「Author Date」を変更する方法を書きます。

手順


一旦、コミットを行った後にgit commit --amendで直前のコミット(変更したいコミット)の「Author」と「Author Date」を実際の作者と作成日付に書き換えます。

この場合…

  • 「Author」と「Author Date」はgit commit --amendで指定した値になります。
  • 「Committer」は自分、「Commit Date」はgit commit --amendした日時になります。

「Author」と「Committer」がわかれるため、「誰が作成して、誰がコミットしたのか」がわかります。

Authorを変更する


--amendのオプションに--authorを指定して作成者の名前とメールアドレスを記述します。

1
git commit --amend --author="SampleName <dummy_address@sample.com>"

Authorの変更は次の記事を参考にさせて頂きました。

Git の Commit Author と Commiter を変更する

Author Dateを変更する


この場合…

  • --amendのオプションに--dateを指定して変更したい日時を指定します。
  • 月と曜日は3文字に省略したものを入力します
1
git commit --amend --date="Thu Jun 1 12:00:00 2015 +0900"

ちなみに日時指定時に誤った値を指定した場合、そのまま「amend」は終了しますが、値は変更されません。