過去のコミット群のAuthorの名前やEmailを書き換える

前提

  • 過去のコミット群を書き換えるので、リビジョンのSHA1ハッシュが書き換わることになる
  • したがって、Githubなど使って共同でソースコードを管理している場合、予期せぬ問題が発生しないか、よく検討してから行う必要がある

方法 1. git filter-branch

 git filter-branch -f --env-filter "
     GIT_AUTHOR_NAME='Newname'
     GIT_AUTHOR_EMAIL='new@email'
     GIT_COMMITTER_NAME='Newname'
     GIT_COMMITTER_EMAIL='new@email'
   " HEAD

方法 2. git rebase -i

 git rebase -i HEAD~4 -x "git commit --amend --author 'Author Name <author.name@mail.com>' --no-edit"
  • git filter-branchよりもこちらの方がこれから行われることを目視できるので安全だと思われる
  • HEAD~4は過去の4つのコミットを書き換えるという意味。必要に合わせて指定する

参考

https://stackoverflow.com/questions/750172/how-to-change-the-author-and-committer-name-and-e-mail-of-multiple-commits-in-gi?page=1&tab=active#tab-top


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS