This wiki has been archived and is now read-only.

Mercurial repository

From Provenance WG Wiki
Jump to: navigation, search

(merge with MercurialRepository)

prov-wg is using the Mercurial version controlled repository at http://dvcs.w3.org/hg/prov

For a great intro to mercurial, check out http://hginit.com.

To get a writable copy of the repository:

hg clone https://dvcs.w3.org/hg/prov

After making a file, run

hg add myfile.txt

which made it part of the repository (though, it has not been sent to http://dvcs.w3.org/hg/prov yet).

Check to see what uncommitted changes you have:

hg status
A myfile.txt

Committing adds the change to your local repository (unlike CVS/SVN, where committing would send it to http://dvcs.w3.org/hg/prov):

hg commit -m 'I added a file!'

Pushing sends your local repository changes to the central repository at http://dvcs.w3.org/hg/prov (Note, you need to have cloned the https in order to push)

hg push


A good tip is probably to do hg pull and hg update (and any hg merge / hg commit if needed) often, before doing any change, then you would be staying ahead of the curve. -Stian


Dealing with multiple heads

Here is what Satya did:

  • 1. hg update -r <name of changeset> (update to desired head)
  • 2. hg merge -r <name of changeset> (if merge is not successful, use hg resolve -m to force resolving conflicts but you may have to loose some changes)
  • 3. hg commit -m "merged one head"
bash-3.2$ hg heads
changeset:   854:eeee2eaf7b27
tag:         tip
parent:      851:f4253ad815ed
user:        Tim L <lebot@rpi.edu>
date:        Tue Nov 08 14:22:24 2011 -0500
summary:     algebraic division example

changeset:   853:9b4d8ba863f5
parent:      852:ab5aa7c910f0
parent:      850:7ef37443dc30
user:        Luc Moreau <l.moreau@ecs.soton.ac.uk>
date:        Tue Nov 08 16:19:25 2011 +0000
summary:     typo

changeset:   686:f2dec9f10b7c
branch:      fpwd
user:        Luc Moreau <l.moreau@ecs.soton.ac.uk>
date:        Tue Oct 11 16:36:39 2011 +0100
summary:     html 4.x compliant file for fpwd

bash-3.2$ hg merge -r 853

Repeated the above steps for all the heads.