Permalink
Browse files

Make refs/remotes/m management the manifest object's responsibility

I plan to have the new submodule manifest format use a different
layout for the m refs than the XML manifest format has used in
the past.  Thus we need to move the behavior management into the
manifest object, and out of the project, so we can change it.

Signed-off-by: Shawn O. Pearce <sop@google.com>
  • Loading branch information...
spearce committed Jul 3, 2009
1 parent 2095179 commit cc6c79643e1cafad565424caabe581e7b548bf6f
Showing with 14 additions and 7 deletions.
  1. +0 −1 git_refs.py
  2. +7 −0 manifest.py
  3. +5 −0 manifest_xml.py
  4. +2 −6 project.py
View
@@ -21,7 +21,6 @@
R_HEADS = 'refs/heads/'
R_TAGS = 'refs/tags/'
R_PUB = 'refs/published/'
-R_M = 'refs/remotes/m/'
class GitRefs(object):
View
@@ -35,3 +35,10 @@ def __init__(self, repodir):
@property
def IsMirror(self):
return self.manifestProject.config.GetBoolean('repo.mirror')
+
+ @property
+ def projects(self):
+ return {}
+
+ def SetMRefs(self, project):
+ pass
View
@@ -29,6 +29,7 @@
MANIFEST_FILE_NAME = 'manifest.xml'
LOCAL_MANIFEST_NAME = 'local_manifest.xml'
+R_M = 'refs/remotes/m/'
class _Default(object):
"""Project defaults within the manifest."""
@@ -168,6 +169,10 @@ def default(self):
self._Load()
return self._default
+ def SetMRefs(self, project):
+ if self.branch:
+ project._InitAnyMRef(R_M + self.branch)
+
def _Unload(self):
self._loaded = False
self._projects = {}
View
@@ -27,7 +27,7 @@
from error import GitError, ImportError, UploadError
from error import ManifestInvalidRevisionError
-from git_refs import GitRefs, HEAD, R_HEADS, R_TAGS, R_PUB, R_M
+from git_refs import GitRefs, HEAD, R_HEADS, R_TAGS, R_PUB
def _lwrite(path, content):
lock = '%s.lock' % path
@@ -598,7 +598,7 @@ def Sync_NetworkHalf(self):
return False
if self.worktree:
- self._InitMRef()
+ self.manifest.SetMRefs(self)
else:
self._InitMirrorHead()
try:
@@ -1080,10 +1080,6 @@ def _InitRemote(self):
remote.ResetFetch(mirror=True)
remote.Save()
- def _InitMRef(self):
- if self.manifest.branch:
- self._InitAnyMRef(R_M + self.manifest.branch)
-
def _InitMirrorHead(self):
self._InitAnyMRef(HEAD)

0 comments on commit cc6c796

Please sign in to comment.