HelpHgIntro » History » Version 3

Version 2 (Luis Figueira, 2011-03-15 06:07 PM) → Version 3/4 (Luis Figueira, 2011-03-16 12:06 PM)

h1. An Introduction to Mercurial using EasyMercurial (easyHg) easyHg

Mercurial is a distributed revision control tool. It is written in Python.

h2. Installation

h3. Requirements:

# Python (version xxx.x)
# Mercurial ()

h3. MacOS

Just drag the easyHg icon to the Applications folder.

h3. Linux

h3. Windows

h3. Running for the first time

When you run easyHg for the first time you'll be prompted for a _username_ and _email address_. These are the details that will be used to identify all your changes pushed to the repositories. They can be changed later in the preferences menu.

h2. The User Interface

EasyMercurial is an interface for Mercurial, simplifying its usage and making it usable by common users.

h3. My Work Tab

h3. History Tab

Graph of changes. The user can right click on any version and act on it (update to it, revert, )

h3. Available
Basic Commands

These are some of the commands you'll find in the easyMercurial interface:

*add* add the specified files on the next commit
*commit* commit the specified files or all outstanding changes
*diff* diff repository (or selected files)
*incoming* show new changesets found in source (in the easyMercurial interface this command is called Preview)
*merge* merge working directory with another revision
*pull* pull changes from the specified source
*push* push changes to the specified destination
*revert* restore individual files or directories to an earlier state
*update* update working directory (or switch revisions)

h2. Typical Workflow

h3. Creating or Opening a Repository

h4. Local Repository

Allows you to open a local repository.

h4. File Folder

Allows you to initialize a local folder as a Mercurial repository.

h4. External Repository

If you have a remote repository URL and want to clone (make a copy of an existing repository) it to your local filesystem.


Updating local repository from remote:

# pull
# update

Updating remote repository from local:

# commit
# push

A window will pop-up asking you to write a message to describe your changes. This message is *very important* because it will tell you and the other developers in the project the reason why you are pushing the changes to the repository.

h3. External resources

* For a simple tutorial on Mercurial (command line), please go to
* _Mercurial: The Definitive Guide_ by Bryan O'Sullivan is a reference book on Mercurial. You can read it for free here:
* Simple and starightforward mercurial tutorial