From dd927252d871294b5599edf442759d676f70bf4e Mon Sep 17 00:00:00 2001 From: mhagger Date: Sat, 5 Sep 2009 21:32:36 +0000 Subject: [PATCH] Allow initial branch deletes with tags to be omitted. If an initial branch delete has tags on it, just delete the tags and allow the delete to be omitted anyway. * cvs2svn_lib/cvs_file_items.py (CVSFileItems._is_unneeded_initial_branch_delete): Don't disqualify a branch because tags point at it. (CVSFileItems.remove_initial_branch_deletes): If a revision to be removed has tags, also delete the tags. git-svn-id: http://cvs2svn.tigris.org/svn/cvs2svn/trunk@4930 be7e6eca-30d4-0310-a8e5-ac0d63af7087 --- cvs2svn_lib/cvs_file_items.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/cvs2svn_lib/cvs_file_items.py b/cvs2svn_lib/cvs_file_items.py index 7c530a37..584e4963 100644 --- a/cvs2svn_lib/cvs_file_items.py +++ b/cvs2svn_lib/cvs_file_items.py @@ -660,7 +660,7 @@ class CVSFileItems(object): if not isinstance(cvs_revision, CVSRevisionAbsent): return False - if cvs_revision.tag_ids or cvs_revision.branch_ids: + if cvs_revision.branch_ids: return False log_msg = metadata_db[cvs_revision.metadata_id].log_msg @@ -703,6 +703,11 @@ class CVSFileItems(object): cvs_rev_next.prev_id = None self.root_ids.add(cvs_rev_next.id) + # Tagging a dead revision doesn't do anything, so remove any + # tags that were set on it: + for tag_id in cvs_revision.tag_ids: + del self[tag_id] + def _exclude_tag(self, cvs_tag): """Exclude the specified CVS_TAG.""" -- 2.11.4.GIT