aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--gbp/deb/git.py12
1 files changed, 10 insertions, 2 deletions
diff --git a/gbp/deb/git.py b/gbp/deb/git.py
index 02c7c28f..5f4cdf4f 100644
--- a/gbp/deb/git.py
+++ b/gbp/deb/git.py
@@ -181,6 +181,15 @@ class DebianGitRepository(GitRepository):
return version.replace('~', '_').replace(':', '%')
@staticmethod
+ def _unsanitize_version(tag):
+ """Reverse _sanitize_version
+
+ >>> DebianGitRepository._unsanitize_version("1%0_bpo3")
+ '1:0~bpo3'
+ """
+ return tag.replace('_', '~').replace('%', ':')
+
+ @staticmethod
def tag_to_version(tag, format):
"""Extract the version from a tag
@@ -194,8 +203,7 @@ class DebianGitRepository(GitRepository):
'(?P<version>[\w_%+-.]+)')
r = re.match(version_re, tag)
if r:
- version = r.group('version').replace('_', '~').replace('%', ':')
- return version
+ return DebianGitRepository._unsanitize_version(r.group('version'))
return None
@property