Mercurial > hg
view contrib/sample.hgrc @ 15183:59e8bc22506e
rollback: avoid unsafe rollback when not at tip (issue2998)
You can get into trouble if you commit, update back to an older
changeset, and then rollback. The update removes your valuable changes
from the working dir, then rollback removes them history. Oops: you've
just irretrievably lost data running nothing but core Mercurial
commands. (More subtly: rollback from a shared clone that was already
at an older changeset -- no update required, just rollback from the
wrong directory.)
The fix assumes that only "commit" transactions have irreplaceable
data, and allows rolling back non-commit transactions as always. But
when rolling back a commit, check that the working dir is checked out
to tip, i.e. the changeset we're about to destroy. If not, abort. You
can get back the old (dangerous) behaviour with --force.
author | Greg Ward <greg@gerg.ca> |
---|---|
date | Fri, 30 Sep 2011 21:58:54 -0400 |
parents | 5f01fd602542 |
children | 216d3d85372b |
line wrap: on
line source
### --- User interface [ui] ### show changed files and be a bit more verbose if True # verbose = True ### username data to appear in comits ### it usually takes the form: Joe User <joe.user@host.com> # username = Joe User <j.user@example.com> ### --- Extensions [extensions] ### each extension has its own 'extension_name=path' line ### the default python library path is used when path is left blank ### the hgext dir is used when 'hgext.extension_name=' is written ### acl - Access control lists ### hg help acl # hgext.acl = ### bisect - binary search changesets to detect bugs ### hg help bisect # hgext.hbisect = ### bugzilla - update bugzilla bugs when changesets mention them ### hg help bugzilla # hgext.bugzilla = ### extdiff - Use external diff application instead of builtin one # hgext.extdiff = ### gpg - GPG checks and signing ### hg help gpg # hgext.gpg = ### graphlog - ASCII graph log ### hg help glog # hgext.graphlog = ### hgk - GUI repository browser ### hg help view # hgext.hgk = ### mq - Mercurial patch queues ### hg help mq # hgext.mq = ### notify - Template driven e-mail notifications ### hg help notify # hgext.notify = ### patchbomb - send changesets as a series of patch emails ### hg help email # hgext.patchbomb = ### churn - create a graph showing who changed the most lines ### hg help churn # hgext.churn = /home/user/hg/hg/contrib/churn.py ### eol - automatic management of line endings # hgext.eol = ### --- hgk additional configuration [hgk] ### set executable path # path = /home/user/hg/hg/contrib/hgk ### --- Hook to Mercurial actions - See hgrc man page for avaliable hooks [hooks] ### Example notify hooks (load hgext.notify extension before use) # incoming.notify = python:hgext.notify.hook # changegroup.notify = python:hgext.notify.hook ### Email configuration for the notify and patchbomb extensions [email] ### Your email address # from = user@example.com ### Method to send email - smtp or /usr/sbin/sendmail or other program name # method = smtp ### smtp server to send email to [smtp] # host = mail # port = 25 # tls = false # username = user # password = blivet # local_hostname = myhost ### --- Email notification hook for server [notify] ### multiple sources can be specified as a whitespace or comma separated list # sources = serve push pull bundle ### set this to False when you're ready for mail to start sending # test = True ### path to config file with names of subscribers # config = /path/to/subscription/file