Git で一連のコミットを行ったのですが、ユーザー名とユーザーのメール プロパティを正しく設定し忘れていたことに気付きました (新しいマシン)。まだこれらのコミットをリポジトリにプッシュしていないので、プッシュする前にこれらのコミットを修正するにはどうすればよいですか (マスター ブランチの最新の 3 つのコミットのみ)?
git reset
とを見てきましたgit commit -C <id> --reset-author
が、正しい方向に進んでいるとは思えません。
ベストアンサー1
警告: 現在非推奨賛成するフィルターリポジトリ。
フィルターブランチのパワーを活用できる場合、リベース/修正は非効率的に思えます。
git filter-branch --env-filter 'if [ "$GIT_AUTHOR_EMAIL" = "incorrect@email" ]; then
GIT_AUTHOR_EMAIL=correct@email;
GIT_AUTHOR_NAME="Correct Name";
GIT_COMMITTER_EMAIL=$GIT_AUTHOR_EMAIL;
GIT_COMMITTER_NAME="$GIT_AUTHOR_NAME"; fi' -- --all
(わかりやすくするために複数行に分割していますが、必須ではありません)
完了したら必ず結果を検査し、意図しない変更を行っていないことを確認してください。