Differences between revisions 4 and 5
Revision 4 as of 2008-02-10 20:24:14
Size: 1551
Editor: abuehl
Comment: Refer to Merge page (nearly identical text)
Revision 5 as of 2008-02-10 20:32:00
Size: 509
Editor: abuehl
Comment: Partial removed and merge into WorkingPractices
Deletions are marked like this. Additions are marked like this.
Line 7: Line 7:
First, merge often! This makes merging easier for everyone and you
find out about conflicts (which are often rooted in incompatible
design decisions) earlier.

Second, don't hesitate to use multiple trees locally. Mercurial makes
this fast and light-weight. Typical usage is to have an incoming tree,
an outgoing tree, and a separate tree for each area being worked on.

The incoming tree is best maintained as a pristine copy of the
upstream [:Repository:repository]. This works as a cache so that you don't have to
[:Pull:pull] multiple copies over the network. No need to check files out here
as you won't be changing them.

The outgoing tree contains all the changes you intend for merge into
upstream. Publish this tree with {{{hg serve}}} or hgweb.cgi or use
{{{hg push}}}
to [:Push:push] it to another publicly availabe repository.

Then, for each feature you work on, create a new tree. Commit early
and commit often, merge with incoming regularly, and once you're
satisfied with your feature, pull the changes into your outgoing tree.
See [:WorkingPractices]

How does merging work?

See [:Merge:merge]

What are some best practices for distributed development with Mercurial?

See [:WorkingPractices]

How do I import from a repository created in a different SCM?

See [:ConvertingRepositories] for various tips.

What about Windows support?

See [:WindowsInstall] for getting started using Windows.

Is there a GUI front-end?

See [:GUIClients] for information on graphical merge tools and other front-ends.

FAQ/GeneralUsage (last edited 2012-11-06 15:04:49 by abuehl)