Hg

From Attie's Wiki
Revision as of 10:51, 30 September 2014 by Attie (Talk | contribs)

Jump to: navigation, search

My Mercurial cheat sheet! See also: git and svn

Note: By the way... there is a system-wide config file, here: /etc/mercurial/hgrc

Contents

~/.hgrc

[ui]
username = Attie Grande <attie@attie.co.uk>
verbose = True
 
[defaults]
revert = --no-backup
 
[pager]
pager = less -FRSX
 
[color]
# configure colors for each possible hg status
status.modified = blue bold
status.added = green bold
status.removed = red bold
status.deleted = cyan bold
status.unknown = magenta bold
status.ignored = white bold
# and for hg diff output also
diff.diffline = bold
diff.extended = cyan bold
diff.file_a = white bold
diff.file_b = white bold
diff.hunk = cyan
diff.deleted = red
diff.inserted = green
diff.changed = white
diff.trailingwhitespace = bold red_background
 
[diff]
showfunc = true
 
[extensions]
hgext.convert =
pager =
color =
mq =
record =

Git Conversion

Git Command Hg Command Comment
git show HEAD hg log -pr tip
git show ${COMMIT} hg log -pr ${COMMIT}
git commit -p hg record
git pull hg pull -u
git fetch hg pull
git log hg log -f Mercurial's log lies... it includes everything - be careful!

For more see here

Default Push

If you create a local repository, and later want to push it to a remote repo, then you'll need to setup the default-push target.
Put the following in your ./.hg/hgrc file:

[paths]
default = ${REMOTE_REPO}

Trust

If you've seen a message similar to the following:

Not trusting file /home/alice/repo/.hg/hgrc from untrusted user alice, group users

Add the following section to your ~/.hgrc file with one or both of the lines.

[trusted]
users = alice, carl, dan
groups = dev-team

Authentication

WARNING: You didn't hear this from me... You should never use it (think SSH with keys)

If you're using the mercurial_keyring extension, then you can leave the '*.password' line out for slightly improved security.

If you're using HTTP to access a repository, you can add the following section to your ~/.hgrc file:

[auth]
svr.prefix = http://my.server/
svr.username = attie
svr.password = supersecret
svr2.prefix = http://my.server2/
svr2.username = attie
svr2.password = supersecret
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox