7

何千行ものコードを含む CSS ファイルがあります。このファイルを変更した各リビジョンに戻って確認せずに、コードの特定の行/チャンクがいつ変更されたかを確認したい (これにはかなりの時間がかかります!)

TortoiseHg、Eclipse と Mercurial プラグイン、またはコマンドラインを使用して、特定のコードの履歴を表示する方法はありますか?

4

4 に答える 4

20

正解はhg grep( Mercurial grep page ) です。

より深い:

hg grep --all "PATTERN" FILENAME

出力例:

>hg grep --all "textdomain" functions.php
functions.php:2:-:load_theme_textdomain('fiver', get_template_directory() . '/translation');
functions.php:2:+:load_theme_textdomain('fiver', get_template_directory() . '/languages');
functions.php:1:+:load_theme_textdomain('fiver', get_template_directory() . '/translation');

(順番 - ファイル名、リビジョン、アクション、このリビジョンの文字列)

于 2012-11-25T09:52:55.390 に答える
13

以下を使用できます。

hg annotate <file>

どのリビジョン行が変更されたかを調べ、最後に同じコマンドを使用し-r <revision>てリビジョンをさかのぼります。

于 2012-11-25T09:05:52.313 に答える
1

ファイルの特定の部分を表示するオプションはないと思います。ただし、いくつかのリビジョンにわたるファイル全体の違いを確認するには、次を使用できますhg diff

hg diff -r firstrevisionnumber:otherrevnumber filename

例えば、hg diff -r 0:8 screen.css

またはコマンドhg log screen.css.

于 2012-11-25T08:55:42.577 に答える