view mercurial/help/glossary.txt @ 43257:675c776fbcd1

sidedatacopies: directly fetch copies information from sidedata When using the sidedata mode, we don't need a complicated and expensive `context` object. Instead we directly fetch copies information from the sidedata (through a changelogrevision object). More optimisations coming. revision: large amount; added files: large amount; rename small amount; c3b14617fbd7 9ba6ab77fd29 filelog: ! wall 3.679613 comb 3.680000 user 3.580000 sys 0.100000 (median of 3) base: ! wall 8.884369 comb 8.880000 user 8.850000 sys 0.030000 (median of 3) before: ! wall 4.681985 comb 4.680000 user 4.640000 sys 0.040000 (median of 3) after: ! wall 3.955894 comb 3.950000 user 3.940000 sys 0.010000 (median of 3) revision: large amount; added files: small amount; rename small amount; c3b14617fbd7 f650a9b140d2 filelog: ! wall 0.003357 comb 0.010000 user 0.010000 sys 0.000000 (median of 781) base: ! wall 12.398524 comb 12.400000 user 12.330000 sys 0.070000 (median of 3) before: ! wall 6.459592 comb 6.470000 user 6.390000 sys 0.080000 (median of 3) after: ! wall 5.505774 comb 5.500000 user 5.410000 sys 0.090000 (median of 3) revision: large amount; added files: large amount; rename large amount; 08ea3258278e d9fa043f30c0 filelog: ! wall 2.754687 comb 2.760000 user 2.650000 sys 0.110000 (median of 4) base: ! wall 1.423166 comb 1.420000 user 1.400000 sys 0.020000 (median of 8) before: ! wall 0.961048 comb 0.960000 user 0.940000 sys 0.020000 (median of 11) after: ! wall 0.882950 comb 0.880000 user 0.880000 sys 0.000000 (median of 11) revision: small amount; added files: large amount; rename large amount; df6f7a526b60 a83dc6a2d56f filelog: ! wall 1.552293 comb 1.550000 user 1.510000 sys 0.040000 (median of 6 base: ! wall 0.022662 comb 0.020000 user 0.020000 sys 0.000000 (median of 128) before: ! wall 0.021649 comb 0.020000 user 0.020000 sys 0.000000 (median of 135) after: ! wall 0.020951 comb 0.020000 user 0.020000 sys 0.000000 (median of 141) revision: small amount; added files: large amount; rename small amount; 4aa4e1f8e19a 169138063d63 filelog: ! wall 1.500983 comb 1.500000 user 1.420000 sys 0.080000 (median of 7) base: ! wall 0.006956 comb 0.010000 user 0.010000 sys 0.000000 (median of 392) before: ! wall 0.004022 comb 0.000000 user 0.000000 sys 0.000000 (median of 735) after: ! wall 0.003988 comb 0.000000 user 0.000000 sys 0.000000 (median of 736) revision: small amount; added files: small amount; rename small amount; 4bc173b045a6 964879152e2e filelog: ! wall 0.011745 comb 0.020000 user 0.020000 sys 0.000000 (median of 250) base: ! wall 0.000156 comb 0.000000 user 0.000000 sys 0.000000 (median of 17180) before: ! wall 0.000118 comb 0.000000 user 0.000000 sys 0.000000 (median of 19170) after: ! wall 0.000097 comb 0.000000 user 0.000000 sys 0.000000 (median of 27276) revision: medium amount; added files: large amount; rename medium amount; c95f1ced15f2 2c68e87c3efe filelog: ! wall 3.228230 comb 3.230000 user 3.110000 sys 0.120000 (median of 4) base: ! wall 0.997640 comb 1.000000 user 0.980000 sys 0.020000 (median of 10) before: ! wall 0.679500 comb 0.680000 user 0.680000 sys 0.000000 (median of 15) after: ! wall 0.596779 comb 0.600000 user 0.600000 sys 0.000000 (median of 17) revision: medium amount; added files: medium amount; rename small amount; d343da0c55a8 d7746d32bf9d filelog: ! wall 1.052501 comb 1.060000 user 1.040000 sys 0.020000 (median of 10 base: ! wall 0.214519 comb 0.220000 user 0.220000 sys 0.000000 (median of 45) before: ! wall 0.149675 comb 0.150000 user 0.150000 sys 0.000000 (median of 66) after: ! wall 0.130786 comb 0.130000 user 0.130000 sys 0.000000 (median of 75) Differential Revision: https://phab.mercurial-scm.org/D7072
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Wed, 02 Oct 2019 17:53:47 -0400
parents 220ee13946d3
children
line wrap: on
line source

Ancestor
    Any changeset that can be reached by an unbroken chain of parent
    changesets from a given changeset. More precisely, the ancestors
    of a changeset can be defined by two properties: a parent of a
    changeset is an ancestor, and a parent of an ancestor is an
    ancestor. See also: 'Descendant'.

Bookmark
    Bookmarks are pointers to certain commits that move when
    committing. They are similar to tags in that it is possible to use
    bookmark names in all places where Mercurial expects a changeset
    ID, e.g., with :hg:`update`. Unlike tags, bookmarks move along
    when you make a commit.

    Bookmarks can be renamed, copied and deleted. Bookmarks are local,
    unless they are explicitly pushed or pulled between repositories.
    Pushing and pulling bookmarks allow you to collaborate with others
    on a branch without creating a named branch.

Branch
    (Noun) A child changeset that has been created from a parent that
    is not a head. These are known as topological branches, see
    'Branch, topological'. If a topological branch is named, it becomes
    a named branch. If a topological branch is not named, it becomes
    an anonymous branch. See 'Branch, anonymous' and 'Branch, named'.

    Branches may be created when changes are pulled from or pushed to
    a remote repository, since new heads may be created by these
    operations. Note that the term branch can also be used informally
    to describe a development process in which certain development is
    done independently of other development. This is sometimes done
    explicitly with a named branch, but it can also be done locally,
    using bookmarks or clones and anonymous branches.

    Example: "The experimental branch."

    (Verb) The action of creating a child changeset which results in
    its parent having more than one child.

    Example: "I'm going to branch at X."

Branch, anonymous
    Every time a new child changeset is created from a parent that is not
    a head and the name of the branch is not changed, a new anonymous
    branch is created.

Branch, closed
    A named branch whose branch heads have all been closed.

Branch, default
    The branch assigned to a changeset when no name has previously been
    assigned.

Branch head
    See 'Head, branch'.

Branch, inactive
    If a named branch has no topological heads, it is considered to be
    inactive. As an example, a feature branch becomes inactive when it
    is merged into the default branch. The :hg:`branches` command
    shows inactive branches by default, though they can be hidden with
    :hg:`branches --active`.

    NOTE: this concept is deprecated because it is too implicit.
    Branches should now be explicitly closed using :hg:`commit
    --close-branch` when they are no longer needed.

Branch, named
    A collection of changesets which have the same branch name. By
    default, children of a changeset in a named branch belong to the
    same named branch. A child can be explicitly assigned to a
    different branch. See :hg:`help branch`, :hg:`help branches` and
    :hg:`commit --close-branch` for more information on managing
    branches.

    Named branches can be thought of as a kind of namespace, dividing
    the collection of changesets that comprise the repository into a
    collection of disjoint subsets. A named branch is not necessarily
    a topological branch. If a new named branch is created from the
    head of another named branch, or the default branch, but no
    further changesets are added to that previous branch, then that
    previous branch will be a branch in name only.

Branch tip
    See 'Tip, branch'.

Branch, topological
    Every time a new child changeset is created from a parent that is
    not a head, a new topological branch is created. If a topological
    branch is named, it becomes a named branch. If a topological
    branch is not named, it becomes an anonymous branch of the
    current, possibly default, branch.

Changelog
    A record of the changesets in the order in which they were added
    to the repository. This includes details such as changeset id,
    author, commit message, date, and list of changed files.

Changeset
    A snapshot of the state of the repository used to record a change.

Changeset, child
    The converse of parent changeset: if P is a parent of C, then C is
    a child of P. There is no limit to the number of children that a
    changeset may have.

Changeset id
    A SHA-1 hash that uniquely identifies a changeset. It may be
    represented as either a "long" 40 hexadecimal digit string, or a
    "short" 12 hexadecimal digit string.

Changeset, merge
    A changeset with two parents. This occurs when a merge is
    committed.

Changeset, parent
    A revision upon which a child changeset is based. Specifically, a
    parent changeset of a changeset C is a changeset whose node
    immediately precedes C in the DAG. Changesets have at most two
    parents.

Checkout
    (Noun) The working directory being updated to a specific
    revision. This use should probably be avoided where possible, as
    changeset is much more appropriate than checkout in this context.

    Example: "I'm using checkout X."

    (Verb) Updating the working directory to a specific changeset. See
    :hg:`help update`.

    Example: "I'm going to check out changeset X."

Child changeset
    See 'Changeset, child'.

Close changeset
    See 'Head, closed branch'.

Closed branch
    See 'Branch, closed'.

Clone
    (Noun) An entire or partial copy of a repository. The partial
    clone must be in the form of a revision and its ancestors.

    Example: "Is your clone up to date?"

    (Verb) The process of creating a clone, using :hg:`clone`.

    Example: "I'm going to clone the repository."

Closed branch head
    See 'Head, closed branch'.

Commit
    (Noun) A synonym for changeset.

    Example: "Is the bug fixed in your recent commit?"

    (Verb) The act of recording changes to a repository. When files
    are committed in a working directory, Mercurial finds the
    differences between the committed files and their parent
    changeset, creating a new changeset in the repository.

    Example: "You should commit those changes now."

Cset
    A common abbreviation of the term changeset.

DAG
    The repository of changesets of a distributed version control
    system (DVCS) can be described as a directed acyclic graph (DAG),
    consisting of nodes and edges, where nodes correspond to
    changesets and edges imply a parent -> child relation. This graph
    can be visualized by graphical tools such as :hg:`log --graph`. In
    Mercurial, the DAG is limited by the requirement for children to
    have at most two parents.

Deprecated
    Feature removed from documentation, but not scheduled for removal.

Default branch
    See 'Branch, default'.

Descendant
    Any changeset that can be reached by a chain of child changesets
    from a given changeset. More precisely, the descendants of a
    changeset can be defined by two properties: the child of a
    changeset is a descendant, and the child of a descendant is a
    descendant. See also: 'Ancestor'.

Diff
    (Noun) The difference between the contents and attributes of files
    in two changesets or a changeset and the current working
    directory. The difference is usually represented in a standard
    form called a "diff" or "patch". The "git diff" format is used
    when the changes include copies, renames, or changes to file
    attributes, none of which can be represented/handled by classic
    "diff" and "patch".

    Example: "Did you see my correction in the diff?"

    (Verb) Diffing two changesets is the action of creating a diff or
    patch.

    Example: "If you diff with changeset X, you will see what I mean."

Directory, working
    The working directory represents the state of the files tracked by
    Mercurial, that will be recorded in the next commit. The working
    directory initially corresponds to the snapshot at an existing
    changeset, known as the parent of the working directory. See
    'Parent, working directory'. The state may be modified by changes
    to the files introduced manually or by a merge. The repository
    metadata exists in the .hg directory inside the working directory.

Draft
    Changesets in the draft phase have not been shared with publishing
    repositories and may thus be safely changed by history-modifying
    extensions. See :hg:`help phases`.

Experimental
    Feature that may change or be removed at a later date.

Graph
    See DAG and :hg:`log --graph`.

Head
    The term 'head' may be used to refer to both a branch head or a
    repository head, depending on the context. See 'Head, branch' and
    'Head, repository' for specific definitions.

    Heads are where development generally takes place and are the
    usual targets for update and merge operations.

Head, branch
    A changeset with no descendants on the same named branch.

Head, closed branch
    A changeset that marks a head as no longer interesting. The closed
    head is no longer listed by :hg:`heads`. A branch is considered
    closed when all its heads are closed and consequently is not
    listed by :hg:`branches`.

    Closed heads can be re-opened by committing new changeset as the
    child of the changeset that marks a head as closed.

Head, repository
    A topological head which has not been closed.

Head, topological
    A changeset with no children in the repository.

History, immutable
    Once committed, changesets cannot be altered.  Extensions which
    appear to change history actually create new changesets that
    replace existing ones, and then destroy the old changesets. Doing
    so in public repositories can result in old changesets being
    reintroduced to the repository.

History, rewriting
    The changesets in a repository are immutable. However, extensions
    to Mercurial can be used to alter the repository, usually in such
    a way as to preserve changeset contents.

Immutable history
    See 'History, immutable'.

Merge changeset
    See 'Changeset, merge'.

Manifest
    Each changeset has a manifest, which is the list of files that are
    tracked by the changeset.

Merge
    Used to bring together divergent branches of work. When you update
    to a changeset and then merge another changeset, you bring the
    history of the latter changeset into your working directory. Once
    conflicts are resolved (and marked), this merge may be committed
    as a merge changeset, bringing two branches together in the DAG.

Named branch
    See 'Branch, named'.

Null changeset
    The empty changeset. It is the parent state of newly-initialized
    repositories and repositories with no checked out revision. It is
    thus the parent of root changesets and the effective ancestor when
    merging unrelated changesets. Can be specified by the alias 'null'
    or by the changeset ID '000000000000'.

Parent
    See 'Changeset, parent'.

Parent changeset
    See 'Changeset, parent'.

Parent, working directory
    The working directory parent reflects a virtual revision which is
    the child of the changeset (or two changesets with an uncommitted
    merge) shown by :hg:`parents`. This is changed with
    :hg:`update`. Other commands to see the working directory parent
    are :hg:`summary` and :hg:`id`. Can be specified by the alias ".".

Patch
    (Noun) The product of a diff operation.

    Example: "I've sent you my patch."

    (Verb) The process of using a patch file to transform one
    changeset into another.

    Example: "You will need to patch that revision."

Phase
    A per-changeset state tracking how the changeset has been or
    should be shared. See :hg:`help phases`.

Public
    Changesets in the public phase have been shared with publishing
    repositories and are therefore considered immutable. See :hg:`help
    phases`.

Pull
    An operation in which changesets in a remote repository which are
    not in the local repository are brought into the local
    repository. Note that this operation without special arguments
    only updates the repository, it does not update the files in the
    working directory. See :hg:`help pull`.

Push
    An operation in which changesets in a local repository which are
    not in a remote repository are sent to the remote repository. Note
    that this operation only adds changesets which have been committed
    locally to the remote repository. Uncommitted changes are not
    sent. See :hg:`help push`.

Repository
    The metadata describing all recorded states of a collection of
    files. Each recorded state is represented by a changeset. A
    repository is usually (but not always) found in the ``.hg``
    subdirectory of a working directory. Any recorded state can be
    recreated by "updating" a working directory to a specific
    changeset.

Repository head
    See 'Head, repository'.

Revision
    A state of the repository at some point in time. Earlier revisions
    can be updated to by using :hg:`update`.  See also 'Revision
    number'; See also 'Changeset'.

Revision number
    This integer uniquely identifies a changeset in a specific
    repository. It represents the order in which changesets were added
    to a repository, starting with revision number 0. Note that the
    revision number may be different in each clone of a repository. To
    identify changesets uniquely between different clones, see
    'Changeset id'.

Revlog
    History storage mechanism used by Mercurial. It is a form of delta
    encoding, with occasional full revision of data followed by delta
    of each successive revision. It includes data and an index
    pointing to the data.

Rewriting history
    See 'History, rewriting'.

Root
    A changeset that has only the null changeset as its parent. Most
    repositories have only a single root changeset.

Secret
    Changesets in the secret phase may not be shared via push, pull,
    or clone. See :hg:`help phases`.

Tag
    An alternative name given to a changeset. Tags can be used in all
    places where Mercurial expects a changeset ID, e.g., with
    :hg:`update`. The creation of a tag is stored in the history and
    will thus automatically be shared with other using push and pull.

Tip
    The changeset with the highest revision number. It is the changeset
    most recently added in a repository.

Tip, branch
    The head of a given branch with the highest revision number. When
    a branch name is used as a revision identifier, it refers to the
    branch tip. See also 'Branch, head'. Note that because revision
    numbers may be different in different repository clones, the
    branch tip may be different in different cloned repositories.

Update
    (Noun) Another synonym of changeset.

    Example: "I've pushed an update."

    (Verb) This term is usually used to describe updating the state of
    the working directory to that of a specific changeset. See
    :hg:`help update`.

    Example: "You should update."

Working directory
    See 'Directory, working'.

Working directory parent
    See 'Parent, working directory'.