hg annotate#

show changeset information by line for each file#

List changes in files, showing the revision id responsible for each line.

This command is useful for discovering when a change was made and by whom.

If you include –file, –user, or –date, the revision number is suppressed unless you also include –number.

Without the -a/–text option, annotate will avoid processing files it detects as binary. With -a, annotate will annotate the file anyway, although the results will probably be neither useful nor desirable.

Use -L/–line-range FILE,M:N options to filter the output to the lines from M to N in FILE. This option is incompatible with –no-follow and cannot be combined with file pattern arguments. When combined with –rev the line ranges refer to the state of the file at the requested revision.

Template:

The following keywords are supported in addition to the common template keywords and functions. See also `hg help templates`.

lines:

List of lines with annotation data.

path:

String. Repository-absolute path of the specified file.

And each entry of {lines} provides the following sub-keywords in addition to {date}, {node}, {rev}, {user}, etc.

line:

String. Line content.

lineno:

Integer. Line number at that revision.

path:

String. Repository-absolute path of the file at that revision.

See `hg help templates.operators` for the list expansion syntax.

Returns 0 on success.