[解決済み】Gitで複数のコミットを修正し、作者を変更する方法
2022-04-01 22:56:40
質問
Git で一連のコミットを行ったのですが、ユーザー名とユーザーメールアドレスのプロパティを正しく設定するのを忘れていたことに今気づきました(新しいマシンです)。 まだこれらのコミットをリポジトリにプッシュしていないのですが、プッシュする前にこれらのコミットを修正するにはどうしたらよいでしょうか(masterブランチの最新3件のコミットのみ)?
を見てきました。
git reset
と
git commit -C <id> --reset-author
しかし、私は正しい道を歩んでいるとは思えません。
どのように解決するのですか?
せっかくフィルターブランチの力を借りているのに、リベースやアメンドは非効率的です。
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
(わかりやすくするために行をまたぐが、必要ない)
完成したら、意図しない変更がなかったかどうか、必ず点検してくださいね。
関連
-
[解決済み] Git のアンプッシュされたコミットを表示する
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] コミット前に 'git add' を取り消すにはどうすればよいですか?
-
[解決済み] リモートのGitブランチをチェックアウトするには?
-
[解決済み] 現在のGit作業ツリーからローカル(未追跡)ファイルを削除する方法
-
[解決済み] 現在のGitブランチをmasterブランチにする
-
[解決済み】"git pull" でローカルファイルを強制的に上書きするには?
-
[解決済み】Gitで複数のコミットの著者名やコミッター名、Eメールを変更する方法は?
-
[解決済み】ローカルのGitブランチの名前を変更するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】GitHubのメッセージの意味: メールのプライバシー制限のためプッシュが拒否されました。
-
[解決済み】git-mergeの-dry-runオプションはありますか?
-
git commits with an error: 更新が拒否されました。現在のブランチの先端が、このブランチより後ろにあるためです。
-
[解決済み】マージが終了していません(MERGE_HEADは存在します)。
-
[解決済み] LFはgitでCRLFに置き換えられます - それは何ですか、そしてそれは重要ですか?[重複]。
-
[解決済み] git が「Pull is not possible because you have unmerged files」と表示するのはなぜですか?
-
[解決済み] TortoiseGitで「git did not exit cleanly (exit code 128)」というエラーを解決するには?[クローズド]
-
[解決済み] "fatal: This operation must be run in work tree." というメッセージが表示されるのはなぜですか?
-
[解決済み] エラー "あなたのプッシュは、プライベートなメールアドレスを公開します"
-
[解決済み】Gitで複数のコミットの著者名やコミッター名、Eメールを変更する方法は?