mercurial/dirstate.py
changeset 4209 dbc3846c09a1
parent 4200 b5d1eaade333
parent 4179 7e1c8a565a4f
child 4232 0d51eb296fb9
--- a/mercurial/dirstate.py	Tue Mar 13 21:54:34 2007 -0700
+++ b/mercurial/dirstate.py	Wed Mar 14 01:26:09 2007 -0500
@@ -24,6 +24,7 @@
         self.dirs = None
         self.copymap = {}
         self.ignorefunc = None
+        self._branch = None
 
     def wjoin(self, f):
         return os.path.join(self.root, f)
@@ -136,6 +137,15 @@
         self.lazyread()
         return self.pl
 
+    def branch(self):
+        if not self._branch:
+            try:
+                self._branch = self.opener("branch").read().strip()\
+                               or "default"
+            except IOError:
+                self._branch = "default"
+        return self._branch
+
     def markdirty(self):
         if not self.dirty:
             self.dirty = 1
@@ -145,6 +155,10 @@
         self.markdirty()
         self.pl = p1, p2
 
+    def setbranch(self, branch):
+        self._branch = branch
+        self.opener("branch", "w").write(branch + '\n')
+
     def state(self, key):
         try:
             return self[key][0]