comparison mercurial/localrepo.py @ 17193:1d710fe5ee0e

peer: introduce canpush and improve error message
author Sune Foldager <cryo@cyanite.org>
date Fri, 13 Jul 2012 21:52:28 +0200
parents 1ac628cd7113
children 32a6a33b9a35
comparison
equal deleted inserted replaced
17192:1ac628cd7113 17193:1d710fe5ee0e
46 def local(self): 46 def local(self):
47 return self._repo 47 return self._repo
48 48
49 def cancopy(self): 49 def cancopy(self):
50 return self._repo.cancopy() # so bundlerepo can override 50 return self._repo.cancopy() # so bundlerepo can override
51
52 def canpush(self):
53 return True
51 54
52 def url(self): 55 def url(self):
53 return self._repo.url() 56 return self._repo.url()
54 57
55 def lookup(self, key): 58 def lookup(self, key):
1802 # repo (local filesystem, old ssh servers). 1805 # repo (local filesystem, old ssh servers).
1803 # 1806 #
1804 # unbundle assumes local user cannot lock remote repo (new ssh 1807 # unbundle assumes local user cannot lock remote repo (new ssh
1805 # servers, http servers). 1808 # servers, http servers).
1806 1809
1810 if not remote.canpush():
1811 raise util.Abort(_("destination does not support push"))
1807 # get local lock as we might write phase data 1812 # get local lock as we might write phase data
1808 locallock = self.lock() 1813 locallock = self.lock()
1809 try: 1814 try:
1810 self.checkpush(force, revs) 1815 self.checkpush(force, revs)
1811 lock = None 1816 lock = None