annotate mercurial/remoterepo.py @ 6297:fed1a9c22076

dirstate.remove: during merges, remember the previous file state We encode the previous state as a negative file size (AFAICS, previous versions of hg always have size == 0 when state == 'r'). We save the state of 'm'erged and dirty files, because they're the two states that indicate that a file has to be committed on a merge to correctly record per-file history.
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
date Tue, 18 Mar 2008 04:07:39 -0300
parents 345bac2bc4ec
children 08800489257e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2859
345bac2bc4ec update copyrights.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2612
diff changeset
1 # remoterepo - remote repository proxy classes for mercurial
0
9117c6561b0b Add back links from file revisions to changeset revisions
mpm@selenic.com
parents:
diff changeset
2 #
2859
345bac2bc4ec update copyrights.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2612
diff changeset
3 # Copyright 2005, 2006 Matt Mackall <mpm@selenic.com>
0
9117c6561b0b Add back links from file revisions to changeset revisions
mpm@selenic.com
parents:
diff changeset
4 #
9117c6561b0b Add back links from file revisions to changeset revisions
mpm@selenic.com
parents:
diff changeset
5 # This software may be used and distributed according to the terms
9117c6561b0b Add back links from file revisions to changeset revisions
mpm@selenic.com
parents:
diff changeset
6 # of the GNU General Public License, incorporated herein by reference.
9117c6561b0b Add back links from file revisions to changeset revisions
mpm@selenic.com
parents:
diff changeset
7
2612
ffb895f16925 add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2484
diff changeset
8 import repo
ffb895f16925 add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2484
diff changeset
9
ffb895f16925 add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2484
diff changeset
10 class remoterepository(repo.repository):
2484
eabcda3ed0dd remove duplicate code.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1559
diff changeset
11 def dev(self):
eabcda3ed0dd remove duplicate code.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1559
diff changeset
12 return -1
eabcda3ed0dd remove duplicate code.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1559
diff changeset
13
926
b765e970c9ff Add a local() method to repository classes
mpm@selenic.com
parents: 923
diff changeset
14 def local(self):
b765e970c9ff Add a local() method to repository classes
mpm@selenic.com
parents: 923
diff changeset
15 return False
b765e970c9ff Add a local() method to repository classes
mpm@selenic.com
parents: 923
diff changeset
16
1559
59b3639df0a9 Convert all classes to new-style classes by deriving them from object.
Eric Hopper <hopper@omnifarious.org>
parents: 1089
diff changeset
17 class remotelock(object):
638
35f7adfefa69 Add a scheme for handling remote locking
Matt Mackall <mpm@selenic.com>
parents: 637
diff changeset
18 def __init__(self, repo):
35f7adfefa69 Add a scheme for handling remote locking
Matt Mackall <mpm@selenic.com>
parents: 637
diff changeset
19 self.repo = repo
35f7adfefa69 Add a scheme for handling remote locking
Matt Mackall <mpm@selenic.com>
parents: 637
diff changeset
20 def release(self):
35f7adfefa69 Add a scheme for handling remote locking
Matt Mackall <mpm@selenic.com>
parents: 637
diff changeset
21 self.repo.unlock()
35f7adfefa69 Add a scheme for handling remote locking
Matt Mackall <mpm@selenic.com>
parents: 637
diff changeset
22 self.repo = None
35f7adfefa69 Add a scheme for handling remote locking
Matt Mackall <mpm@selenic.com>
parents: 637
diff changeset
23 def __del__(self):
35f7adfefa69 Add a scheme for handling remote locking
Matt Mackall <mpm@selenic.com>
parents: 637
diff changeset
24 if self.repo:
35f7adfefa69 Add a scheme for handling remote locking
Matt Mackall <mpm@selenic.com>
parents: 637
diff changeset
25 self.release()