From: W. Trevor King Date: Sun, 13 Dec 2009 13:43:01 +0000 (-0500) Subject: Don't regexp out the short-revid in Git._vcs_commit() X-Git-Tag: 1.0.0~59^2~52^2~73 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=e8a0ff2488d1535cea0528aa1c7b9ef8aa43dfed;p=be.git Don't regexp out the short-revid in Git._vcs_commit() The output version strings change: Version 1.5.4.3: Created initial commit 217efa7: MESSAGE Created commit acb3066: MESSAGE Version 1.6.4.4: [master (root-commit) c5b48cf] MESSAGE [master 66a48c1] MESSAGE Instead, get the full revid, and look for its beginning in the output. --- diff --git a/libbe/storage/vcs/git.py b/libbe/storage/vcs/git.py index 77ddd88..6d240c2 100644 --- a/libbe/storage/vcs/git.py +++ b/libbe/storage/vcs/git.py @@ -130,15 +130,9 @@ class Git(base.VCS): 'nothing added to commit'] if self._u_any_in_string(strings, output) == True: raise base.EmptyCommit() - revision = None - revline = re.compile('(.*) (.*)[:\]] (.*)') - match = revline.search(output) - assert match != None, output+error - assert len(match.groups()) == 3 - revision = match.groups()[1] full_revision = self._vcs_revision_id(-1) - assert full_revision.startswith(revision), \ - 'Mismatched revisions:\n%s\n%s' % (revision, full_revision) + assert full_revision[:7] in output, \ + 'Mismatched revisions:\n%s\n%s' % (full_revision, output) return full_revision def _vcs_revision_id(self, index):