3

git リポジトリを作成し、いくつかの変更をコミットした後、グローバル ユーザー名と電子メール アドレスの設定が正しくないことに気付き、すべてのコミットを変更する必要があるとします。どうすればそれができますか?グローバル設定を変更するのと同じくらい簡単git rebase --interactiveですか?

そのレポが GitHub にプッシュされた場合はどうなるでしょうか。幸いなことに、誰もそのレポに変更を加えたり、フォークしたりしていません。GitHub でレポを削除してから再作成するだけの最も簡単な修正方法はありますか?

4

1 に答える 1

3

次のように使用できますgit filter-branch(「新しい名前」と「new@email.com」を変更):

git filter-branch --commit-filter 'export GIT_AUTHOR_NAME="New Name"; export GIT_AUTHOR_EMAIL="new@email.com"; git commit-tree "$@"'

ブランチ全体を実行したくない場合は、最後にリビジョン範囲を追加できます (reva は変更されません)。

git filter-branch --commit-filter 'export GIT_AUTHOR_NAME="New Name"; export GIT_AUTHOR_EMAIL="new@email.com"; git commit-tree "$@"' reva..revb
于 2013-07-03T03:12:15.540 に答える