hg identify

identify the working directory or specified revision



hg identify [-nibtB] [-r REV] [SOURCE]


Print a summary identifying the repository state at REV using one or two parent hash identifiers, followed by a "+" if the working directory has uncommitted changes, the branch name (if not default), a list of tags, and a list of bookmarks.

When REV is not given, print a summary of the current state of the repository including the working directory. Specify -r. to get information of the working directory parent without scanning uncommitted changes.

Specifying a path to a repository root or Mercurial bundle will cause lookup to operate on that repository/bundle.


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

dirty:String. Character + denoting if the working directory has uncommitted changes.
id:String. One or two nodes, optionally followed by +.
parents:List of strings. Parent nodes of the changeset.


  • generate a build identifier for the working directory:

    hg id --id > build-id.dat
  • find the revision corresponding to a tag:

    hg id -n -r 1.3
  • check the most recent revision of a remote repository:

    hg id -r tip https://www.mercurial-scm.org/repo/hg/

See hg log for generating more information about specific revisions, including full hash identifiers.

Returns 0 if successful.


-r, --rev <REV>
 identify the specified revision
-n, --num show local revision number
-i, --id show global revision id
-b, --branch show branch
-t, --tags show tags
-B, --bookmarks
 show bookmarks
-e, --ssh <CMD>
 specify ssh command to use
--remotecmd <CMD>
 specify hg command to run on the remote side
--insecure do not verify server certificate (ignoring web.cacerts config)
-T, --template <TEMPLATE>
 display with template