annotate help/a-04.html @ 537:a4e699d32a9a

gah! hg 2.1 changes push and pull so as to return failure codes on success, if there was nothing to push or pull
author Chris Cannam
date Fri, 10 Feb 2012 13:08:07 +0000
parents 21aa41b62c3a
children
rev   line source
Chris@494 1 <link rel="stylesheet" type="text/css" href="help.css"/>
Chris@494 2
Chris@494 3
Chris@494 4 <h2>What is a repository?</h2>
Chris@494 5
Chris@494 6 <p>When you use a version control system to keep track of your changes to
Chris@494 7 a set of files, there are two different concepts you're dealing with:
Chris@494 8 a <i>working copy</i> and a <i>repository</i>.</p>
Chris@494 9
Chris@494 10 <p>A <i>working copy</i> is just a folder with your project's files in it. It
Chris@494 11 contains the versions of the files that you are working with now.
Chris@494 12 <ul><li>EasyMercurial's &ldquo;My Work&rdquo; tab shows you which files you have been working on in your current working copy.</li></ul></p>
Chris@494 13
Chris@494 14 <p>A <i>repository</i> is a record of the entire history of your project. When
Chris@494 15 change something in the working copy, you can then commit it to the
Chris@494 16 repository and your change gets added to the history.
Chris@494 17 <ul><li>EasyMercurial's &ldquo;History&rdquo; tab shows you the changes that have been committed to your project's history in its repository.</li></ul></p>
Chris@494 18
Chris@494 19 <p>You can also go back and grab an older version from the repository if
Chris@494 20 you find you need it. (If you do this, then the working copy will be
Chris@494 21 updated so as to contain that older version rather than the most
Chris@494 22 recent one.)</p>
Chris@494 23
Chris@494 24 <p>Older centralised version control systems use a separate database for
Chris@494 25 the repository. But with a distributed version control system such as
Chris@494 26 Mercurial, the repository &ndash; the entire history of your project files
Chris@494 27 &ndash; is stowed into a special folder inside the working copy on your
Chris@494 28 hard drive. Every change you commit gets added to the history in that
Chris@494 29 hidden folder. (The history is compressed, so it doesn't take as much
Chris@494 30 space as you might imagine.)</p>
Chris@494 31
Chris@494 32 <p>The term <i>remote repository</i> simply refers to a repository related to
Chris@494 33 your local one, but stored on another computer somewhere else. Often
Chris@494 34 this may be a &ldquo;master copy&rdquo; of your project stored on a server
Chris@494 35 elsewhere, which you and your collaborators can use to keep up with
Chris@494 36 each other's work, or which you can use to make your work public, or
Chris@494 37 simply use as a private backup.</p>
Chris@494 38