2

タイトルの質問を少し詳しく説明すると、特定のファイルの特定のバージョンのリポジトリ履歴を Mercurial で検索し、そのバージョンを含むすべてのリビジョン (または最新のリビジョンのみ) を表示する方法はありますか?

たとえば、現在の作業リビジョンが で300あり、ファイルが以前のバージョン (たとえば Revision 200) に戻されたとします。これはわかりません。簡単に確認できるのは、新しいファイルが300バージョンと「どのように異なるか」だけです。元に戻された可能性のあるすべてのリビジョンを見つけるにはどうすればよいですか?

また、Mercurial がこれをネイティブに実行できない場合、できる別のツールはありますか? (トータスHG?)

4

1 に答える 1

2

これはhgの組み込み機能では不可能だと思いますが、賢明なxargsとmd5sumアプリケーションでそのようなものを得ることができます。

hg log --template "{rev}\\n" | xargs -I "{}" /bin/bash -c 'echo $(hg cat -r {} <filename> | md5sum) {}'

これにより、md5チェックサムとリビジョン番号のリストが表示されます。これを並べ替えると、ファイルのバージョンを共有するリビジョンが表示されます。

于 2012-05-23T18:30:32.357 に答える