Rev 1428: Don't set tag if we can't lookup the revision id. in http://people.samba.org/bzr/jelmer/bzr-svn/trunk
Jelmer Vernooij
jelmer at samba.org
Fri Jul 4 22:14:25 BST 2008
At http://people.samba.org/bzr/jelmer/bzr-svn/trunk
------------------------------------------------------------
revno: 1428
revision-id: jelmer at samba.org-20080704211424-rkawrjnz6cbjbmg7
parent: jelmer at samba.org-20080704205813-d2mfvuiipfcd27ql
committer: Jelmer Vernooij <jelmer at samba.org>
branch nick: 0.4
timestamp: Fri 2008-07-04 23:14:24 +0200
message:
Don't set tag if we can't lookup the revision id.
modified:
branch.py svnbranch.py-20051017135706-11c749eb0dab04a7
=== modified file 'branch.py'
--- a/branch.py 2008-07-04 05:48:04 +0000
+++ b/branch.py 2008-07-04 21:14:24 +0000
@@ -24,6 +24,7 @@
from bzrlib.inventory import (Inventory)
from bzrlib.revision import is_null, ensure_null, NULL_REVISION
from bzrlib.tag import BasicTags
+from bzrlib.trace import mutter
from bzrlib.workingtree import WorkingTree
from bzrlib.plugins.svn import core, wc
@@ -64,7 +65,13 @@
def set_tag(self, tag_name, tag_target):
path = self.layout.get_tag_path(tag_name, self.project)
parent = urlutils.dirname(path)
- (from_bp, from_revnum, mapping) = self.repository.lookup_revision_id(tag_target)
+ try:
+ (from_bp, from_revnum, mapping) = self.repository.lookup_revision_id(tag_target)
+ except NoSuchRevision:
+ mutter("not setting tag %s; unknown revision %s", tag_name, tag_target)
+ return
+ if from_bp == path:
+ return
conn = self.repository.transport.connections.get(urlutils.join(self.repository.base, parent))
deletefirst = (conn.check_path(urlutils.basename(path), self.repository.get_latest_revnum()) != core.NODE_NONE)
try:
@@ -123,6 +130,15 @@
finally:
self.repository.transport.add_connection(conn)
+ def _set_tag_dict(self, dest_dict):
+ cur_dict = self.get_tag_dict()
+ for k,v in dest_dict.iteritems():
+ if cur_dict.get(k) != v:
+ self.set_tag(k, v)
+ for k in cur_dict:
+ if k not in dest_dict:
+ self.delete_tag(k)
+
class SvnBranch(Branch):
"""Maps to a Branch in a Subversion repository """
@@ -407,6 +423,7 @@
raise NotImplementedError('overwrite not supported for '
'Subversion branches')
raise
+ result.tag_conflicts = source.tags.merge_to(self.tags, overwrite)
(result.new_revno, result.new_revid) = self.last_revision_info()
return result
finally:
@@ -537,6 +554,9 @@
def __str__(self):
return '%s(%r)' % (self.__class__.__name__, self.base)
+ def supports_tags(self):
+ return self._format.supports_tags()
+
__repr__ = __str__
@@ -564,3 +584,5 @@
"""See BranchFormat.initialize()."""
raise NotImplementedError(self.initialize)
+ def supports_tags(self):
+ return True
More information about the bazaar-commits
mailing list