mercurial/remoterepo.py
author Thomas Arendsen Hein <thomas@intevation.de>
Wed, 29 Mar 2006 22:35:21 +0200
changeset 2021 fc22ed56afe3
parent 1559 59b3639df0a9
child 2484 eabcda3ed0dd
permissions -rw-r--r--
Fix hg push and hg push -r sometimes creating new heads without --force. Fixing issue179. The algorithm checks if there not more new heads on the remote side than heads which become non-heads due to getting children. Pushing this repo: m /\ 3 3a| |/ / 2 2a |/ 1 to a repo only having 1, 2 and 3 didn't abort requiring --force before. Added test cases for this and some doc strings for used methods.

# remoterepo - remote repositort proxy classes for mercurial
#
# Copyright 2005 Matt Mackall <mpm@selenic.com>
#
# This software may be used and distributed according to the terms
# of the GNU General Public License, incorporated herein by reference.

class remoterepository(object):
    def local(self):
        return False

class remotelock(object):
    def __init__(self, repo):
        self.repo = repo
    def release(self):
        self.repo.unlock()
        self.repo = None
    def __del__(self):
        if self.repo:
            self.release()