Mercurial and Git clients can push and pull from this alias URL to interact with this repository. You can change to which repository an alias points by going to the Aliases link on the project page.
==============================
A quick tour for the impatient
==============================
.. module:: tour
:synopsis: A Gentle Introduction to Using TortoiseHG on Windows
One of the great things about Mercurial is that there are lots of different
`Collaboration Models <http://hgbook.red-bean.com/hgbookch6.html#x10-1110006.2>`_.
The following describes just one of those ways: a single central repository.
To get started, suppose you volunteer to create the first version. There are
`ways of importing already existing repositories <http://www.selenic.com/mercurial/wiki/index.cgi/RepositoryConversion>`_,
but lets assume we're starting from scratch. First you need to make sure that you are correctly identified in TortoiseHG.
You do this by adjusting the global settings of TortoiseHG. Try right-clicking your source folder and following
:menuselection:`TortoiseHG --> Global Settings`
.. figure:: figures/contextmenu.png
:alt: Context Menu
From there you should be able to find what TortoiseHG thinks your name is, and correct it.
.. note::
If you forget to set your name TortoiseHG ask you it at the first *commit*, when the name is required.
Create the repository on your local machine by using the :guilabel:`Create Repository Here` selection above.
Mercurial places a subdirectory in your folder called :file:`.hg`. This is where it keeps all its versioning
information. It is called the *repository*, and the directory containing the repository is called the
-*working directory*. You never specify the :file`.hg` directory. It is mentioned here just so you'll better
+*working directory*. You never specify the :file:`.hg` directory. It is mentioned here just so you'll better
understand how Mercurial is working.
Add the files contained in the folder by following the menu :menuselection:`TortoiseHG --> Add Files`.
.. {{images/image008.gif}}
Commit to your local repository by right-clicking anywhere in the folder, or on the folder itself,
and then selecting :guilabel:`HG Commit ...`.
.. {{images/image001.png}}
Now you are ready to share your work. You do this by making a copy of your repository in a public place
that everyone in your group can access. Mercurial calls this *cloning your repository*. Clone your repository
to a common area, such as a shared drive or web site, which will be the merge point for the team.
.. {{images/image003.gif}}
Other team members will then work from this clone.
Fetching from the group repository
==================================
You want to start collaborating with your team. They tell you something like *fetch the repository from x*.
What does it mean? It means that you want to make a copy of the repository saved at x on your local machine.
Mercurial calls this cloning and has a special interface for it. Right click in the directory where you want your copy
.. {{images/Clone.gif}}
Working with your repository
============================
Suppose you've introduced some changes. It is easy to see that there are a couple of directories with changes pending.
You can traverse the directories to find specific changes and commit them from Explorer. A quicker way is to use the
commit tool:
.. {{images/image001.png}}
The commit tool gives you a way to see differences or you can use your visual difference tool (kdiff). You may commit
many times before synchronizing with the group repository.
.. figure:: figures/commit.png
:alt: Commit dialog
When you're ready to publish your changes, you
1. commit your changes to your local repository, if you haven't already.
2. pull changes from the group repository into your repository
3. commit the merge to your local repository
4. make sure your work still builds and passes your extensive test suite
5. push your changes to the group repository.
Which may sound complicated, but it is just pushing the buttons on the synchronize tool.
.. {{images/image005.gif}}
Which makes the synchronize tool come up:
.. figure:: figures/synchronize.png
:alt: Synchronize dialog
:guilabel:`Incoming`
show me what changes in the group repository that are not in my repository
:guilabel:`Pull`
bring them on over and start merging
:guilabel:`Outgoing`
show me what is different in my repository compared to the group repository.
:guilabel:`Push`
make my changes the current changeset (tip) in the group repository.
Mercurial makes collaboration easy, fast, and productive. Learn more at http://www.selenic.com/mercurial/wiki/
Attach a Trello Card
Add a tag
Your session has expired
You are no longer logged in. Please log in and try your request again.
Filter RSS Feed
This RSS feed URL allows you to see the contents of your current filter using any feed reader.
This link includes a special authentication token. If you share the URL with anyone else, they can see this RSS feed's activity. You can disable these tokens when needed.
Your current filter is unsaved; changing it won't affect this RSS feed.