Index: llvm/trunk/utils/git/find-rev =================================================================== --- llvm/trunk/utils/git/find-rev +++ llvm/trunk/utils/git/find-rev @@ -1,50 +0,0 @@ -#!/usr/bin/python - -import os, sys, subprocess - -def main(): - from optparse import OptionParser, OptionGroup - parser = OptionParser("usage: %prog [options] ") - parser.add_option("", "--branch", dest="branch", - help="Ref for the branch to search [%default]", - action="store", default="git-svn") - (opts, args) = parser.parse_args() - - if len(args) != 2: - parser.error("invalid number of arguments") - - repo,rev = args - - try: - rev = int(rev) - except: - parser.error("invalid revision argument (not an integer)") - - os.chdir(repo) - p = subprocess.Popen(['git', 'rev-list', opts.branch, '--pretty'], - stdout=subprocess.PIPE) - - bestRev = bestCommit = None - lastCommit = None - for ln in p.stdout: - if ln.startswith('commit '): - lastCommit = ln.split(' ',2)[1] - elif ln.startswith(' git-svn-id: '): - _,repo,_ = ln.strip().split(' ') - _,lrev = repo.rsplit('@',1) - lrev = int(lrev) - if lrev<=rev: - if bestRev is None or lrev>bestRev: - assert lastCommit - bestCommit = lastCommit - bestRev = lrev - if lrev == rev: - break - - if bestCommit is not None: - print bestCommit - sys.exit(0) - sys.exit(1) - -if __name__=='__main__': - main()