Differences between revisions 12 and 13
Revision 12 as of 2008-03-31 22:53:05
Size: 1636
Editor: abuehl
Comment: moved from Update
Revision 13 as of 2008-03-31 23:11:50
Size: 1940
Editor: abuehl
Comment: +hg update null, +how to sync to a changeset, Reordered, +subtitles
Deletions are marked like this. Additions are marked like this.
Line 5: Line 5:
A working directory has one or two [:Parent:parent] revisions. The parent revision or revisions will become the parent revisions of the new revision which will eventually be created by a commit of the [:LocalModifications:local modifications]. An [:Update:update] will change the parent revision, whereas a [:Revert:revert] will only modify the content of the working directory. It’s useful to think of the working directory as "the changeset I’m about to commit".

Use {{{hg update}}} to bring the working directory into sync with a particular [:ChangeSet:changeset] (see [:Update]).

To remove all files from the working directory (not the repository!), you can do
{{{
hg update null
}}}

A [:NamedBranches:branch name] can be set for the working directory.

Mercurial tracks various information about the working directory (see DirState).

=== Parent(s) ===

A working directory has one or two [:Parent:parent] revisions. The parent revision or revisions will become the parent revisions of the new revision which will eventually be created by a commit of the [:LocalModifications:local modifications].

An [:Update:update] will change the parent revision, whereas a [:Revert:revert] will only modify the content of the working directory (see [:Commit:commit]).
Line 9: Line 26:
A [:NamedBranches:branch name] can be set for the working directory.

It’s useful to think of the working directory as "the [:ChangeSet:changeset] I’m about to commit".

Mercurial tracks various information about the working directory (see DirState).
=== When an update is needed ===
Line 29: Line 42:
If the working directory is at the tip (i.e., no update needed): If the working directory is at the tip (that is, no update needed)

Working directory

The working directory is the top-level directory in a [:Repository:repository], in which the plain versions of files are available to read, edit and build. Files in the working directory are usually from the [:Tip:tip], but may be from older [:Revision:revisions], or modified and not yet [:Commit:committed].

It’s useful to think of the working directory as "the changeset I’m about to commit".

Use hg update to bring the working directory into sync with a particular [:ChangeSet:changeset] (see [:Update]).

To remove all files from the working directory (not the repository!), you can do

hg update null

A [:NamedBranches:branch name] can be set for the working directory.

Mercurial tracks various information about the working directory (see DirState).

1. Parent(s)

A working directory has one or two [:Parent:parent] revisions. The parent revision or revisions will become the parent revisions of the new revision which will eventually be created by a commit of the [:LocalModifications:local modifications].

An [:Update:update] will change the parent revision, whereas a [:Revert:revert] will only modify the content of the working directory (see [:Commit:commit]).

A working directory will only have two parent revisions as the result of a [:Merge:merge].

2. When an update is needed

There are several ways to see if an update of your working directory is needed (see related [http://www.selenic.com/pipermail/mercurial/2006-September/010951.html mailing list thread]):

To see the delta between the working directory and the tip, do:

hg diff -r tip

To see what patches would be applied to the working directory on an update do:

hg log -r tip:.

If the working directory is at the tip (that is, no update needed)

hg id

will write "tip" after the changeset id.


CategoryGlossary

WorkingDirectory (last edited 2012-11-06 16:23:25 by abuehl)