1. HG & pclocks
/home/sgir/src/pclock2 - clones should pull/push from here.
1.1. 'sgir' created the HG Repository by:
cd /home/sgir/src/pclock2
hg init
hg add *.c *.h makefile POA.txt README.html save.me
hg commit
Now 'sgir' has a working directory and a repository.
'sgir' continues modification this working copy.
When 'sgir' is ready to update his repository with a new version:
hg status - summary of changes between repository and working copy.
hg diff - diff of changes between repository and working copy.
hg commit - commit all changes to the repository
If someone pushes an update to 'sgir', then 'sgir' need to do:
hg update - updates the repository's working directory
It's likely others can't update 'sgir''s repository (permission problems), so
'sgir' can pull those update:
hg pull /home/joe/project - pulls in changes from joe's repository
hg update - update 'sgir''s working copy
1.2. Tony wants to join in.
To get a copy of sgir's repository (not the working copy):
hg clone ssh://sgir@sgir//home/sgir/src/pclock2 pclock2
Work on your changes...
When ready to push changes back to sgir:
hg incoming - show what a hg pull will do.
hg pull - update tony's the repository with lastest sgir copy
If 'hg pull' result in mulitple heads, merge your working copy with the last revision.
hg heads - show the branches.
hg merge
hg commit - commit you working copy in your local directory.
hg push - submit back to sgir.
sgir> hg update - to update's sgir working copy
1.3 Other HG commands
hg log - history of repository
hg status - display current status (files that changed).
hg diff - shows changes between repository and working copy.
2. References
http://wiki.geeklog.net/index.php/Using_Mercurial