hg annotate [-r REV] [-f] [-a] [-u] [-d] [-n] [-c] [-l] FILE...

aliases: blame

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.

    .. container:: verbose

       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.

    .. container:: verbose

      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.
    

options ([+] can be repeated):

 == =========================== ========================================================
 -r --rev REV                   annotate the specified revision                         
    --follow                    follow copies/renames and list the filename (DEPRECATED)
    --no-follow                 don't follow copies and renames                         
 -a --text                      treat all files as text                                 
 -u --user                      list the author (long with -v)                          
 -f --file                      list the filename                                       
 -d --date                      list the date (short with -q)                           
 -n --number                    list the revision number (default)                      
 -c --changeset                 list the changeset                                      
 -l --line-number               show line number at the first appearance                
    --skip REV [+]              revset to not display (EXPERIMENTAL)                    
 -L --line-range FILE,RANGE [+] follow line range of specified file (EXPERIMENTAL)      
 -w --ignore-all-space          ignore white space when comparing lines                 
 -b --ignore-space-change       ignore changes in the amount of white space             
 -B --ignore-blank-lines        ignore changes whose lines are all blank                
 -Z --ignore-space-at-eol       ignore changes in whitespace at EOL                     
 -I --include PATTERN [+]       include names matching the given patterns               
 -X --exclude PATTERN [+]       exclude names matching the given patterns               
 -T --template TEMPLATE         display with template                                   
 == =========================== ========================================================

global options ([+] can be repeated):

 == =================== ==================================================================
 -R --repository REPO   repository root directory or name of overlay bundle file          
    --cwd DIR           change working directory                                          
 -y --noninteractive    do not prompt, automatically pick the first choice for all prompts
 -q --quiet             suppress output                                                   
 -v --verbose           enable additional output                                          
    --color TYPE        when to colorize (boolean, always, auto, never, or debug)         
    --config CONFIG [+] set/override config option (use 'section.name=value')             
    --debug             enable debugging output                                           
    --debugger          start debugger                                                    
    --encoding ENCODE   set the charset encoding (default: utf-8)                         
    --encodingmode MODE set the charset encoding mode (default: strict)                   
    --traceback         always print a traceback on exception                             
    --time              time how long the command takes                                   
    --profile           print command execution profile                                   
    --version           output version information and exit                               
 -h --help              display help and exit                                             
    --hidden            consider hidden changesets                                        
    --pager TYPE        when to paginate (boolean, always, auto, or never) (default: auto)
 == =================== ==================================================================