2

プッシュしたすべてのコミットに間違った(不正な形式の)電子メールアドレスが添付されたコミットデータを含むMercurial(hg)リポジトリがあります。リモートサーバー上のそのリポジトリファイルに(ssh経由で)直接アクセスできます。リポジトリファイルを直接変更して、コミット履歴内の不正な形式の電子メールのすべてのインスタンスを修正する方法はありますか?

4

1 に答える 1

3

履歴を書き換えずにこれを行うことはできません。Mercurialリポジトリ内のすべてのチェンジセットIDは、チェンジセットデータから計算された暗号化ハッシュです。基本的に、影響を受けるすべてのチェンジセットで、ファイルの1つの内容を変更するのと同じように電子メールアドレスを変更します。

あなたは本当にそのメールを修正する必要がありますか?履歴を書き換えてこれを行うと、本質的に新しいリポジトリであるものができあがります。仲間の開発者は、再作成されたものを優先して、担当者のコピーを放棄する必要があります。

実際の変換を行うには、マップに組み込まれているconvert拡張機能が役立つはずだと私は信じています。作成者名が固定されたリポジトリのコピーが作成されます。--authors

于 2012-06-02T16:05:43.347 に答える