##// END OF EJS Templates
histedit: don't clobber working copy on --abort if not on histedit cset...
histedit: don't clobber working copy on --abort if not on histedit cset Similar to issue4009, 2.7 will force people to abort histedits before doing interesting things. Without this fix, people with histedit sessions they wandered away from before upgrading to 2.7 could clobber their working copy for no reason.

File last commit:

r17298:59c14bf5 stable
r19519:c2a479a0 stable
Show More
pushkey.py
39 lines | 1.1 KiB | text/x-python | PythonLexer
Matt Mackall
pushkey: add pushkey core
r11367 # pushkey.py - dispatching for pushing and pulling keys
#
# Copyright 2010 Matt Mackall <mpm@selenic.com>
#
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.
Pierre-Yves.David@ens-lyon.org
obsolete: exchange obsolete marker over pushkey...
r17075 import bookmarks, phases, obsolete
Matt Mackall
bookmarks: move pushkey functions into core
r13353
Matt Mackall
pushkey: add pushkey core
r11367 def _nslist(repo):
n = {}
for k in _namespaces:
n[k] = ""
Pierre-Yves David
pushkey: do not exchange obsole markers if feature is disabled...
r17298 if not obsolete._enabled:
n.pop('obsolete')
Matt Mackall
pushkey: add pushkey core
r11367 return n
Matt Mackall
bookmarks: move pushkey functions into core
r13353 _namespaces = {"namespaces": (lambda *x: False, _nslist),
Pierre-Yves David
phases: add basic pushkey support
r15648 "bookmarks": (bookmarks.pushbookmark, bookmarks.listbookmarks),
"phases": (phases.pushphase, phases.listphases),
Pierre-Yves.David@ens-lyon.org
obsolete: exchange obsolete marker over pushkey...
r17075 "obsolete": (obsolete.pushmarker, obsolete.listmarkers),
Pierre-Yves David
phases: add basic pushkey support
r15648 }
Matt Mackall
pushkey: add pushkey core
r11367
def register(namespace, pushkey, listkeys):
_namespaces[namespace] = (pushkey, listkeys)
def _get(namespace):
return _namespaces.get(namespace, (lambda *x: False, lambda *x: {}))
def push(repo, namespace, key, old, new):
'''should succeed iff value was old'''
pk = _get(namespace)[0]
return pk(repo, key, old, new)
def list(repo, namespace):
'''return a dict'''
lk = _get(namespace)[1]
return lk(repo)