6

今週末に大学に提出するプログラミングの課題がありますが、公平性を維持するために課題の匿名性について厳格な規則があるため、私の名前 (またはその他の明らかな識別情報) が自動的に失格となる場合があります。

すべてをディスクに書き込む準備をしているときに、HG レポジトリが私の名前のコピーでいっぱいになっていることに気付きました/思い出しました。コードはすべてクリーンですが、すべての変更セットの作成者は、私の氏名と電子メール、または大学のログイン ID とラボ コンピューターのホスト名 (私が働いていた場所によって異なります) のいずれかです。

保持している他の情報を失うことなく、リポジトリの匿名バージョンを作成する (または、すべての名前を学生 ID 番号に置き換える) 必要があります。

では、見出しにあるように、mercurial リポジトリを匿名化するにはどうすればよいでしょうか?

4

2 に答える 2

8

Mercurial のConvert 拡張機能--authorsオプション付きで使用して、リポジトリを新しい Mercurial リポジトリに「変換」し、変換中に作成者の名前を変更することができます。

2番目のリンクからの引用:

オプションが指定されている場合、Convert は変換中に作成者名を再マップすることもでき --authorsます。引数は、各ソース コミット作成者を宛先コミット作成者にマップする単純なテキスト ファイルである必要があります。UNIX ログインを使用して作成者を識別するソース SCM (例: CVS) に便利です。例:

john=John Smith <John.Smith@someplace.net>
tom=Tom Johnson <Tom.Johnson@bigcity.com>
于 2012-05-02T20:36:55.547 に答える
1

マージ チェンジセットがない場合はgraft、Mercurial 2.0 のコマンドを使用して、記録されたユーザー名を変更しながらリポジトリを新しいリポジトリに移植してみてください。

マージ チェンジセットがある場合はtransplant、Mercurial 2.2 で拡張機能を使用できる可能性がありますが、記録されたユーザー名を変更するのは難しいようです。

于 2012-05-02T19:40:55.573 に答える