usage: Tool to check where a git commit was merged and reverted.

[-h] [-g GIT_DIR] hash

positional arguments:
  hash                  Hash of the commit to be searched.

optional arguments:
  -h, --help            show this help message and exit
  -g GIT_DIR, --git-dir GIT_DIR
                        The path to your git working directory.

BUG=

Review URL: https://codereview.chromium.org/1033043002

Cr-Commit-Position: refs/heads/master@{#27563}
This commit is contained in:
hablich 2015-04-01 02:42:09 -07:00 committed by Commit bot
parent 77dd1f347d
commit ef7e6fb165

37
tools/release/mergeinfo.py Executable file
View File

@ -0,0 +1,37 @@
#!/usr/bin/env python
# Copyright 2015 the V8 project authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import argparse
import os
import sys
from subprocess import call
def print_analysis(gitWorkingDir, hashToSearch):
print '1.) Info'
git_execute(gitWorkingDir, ['status'])
print '2.) Searching for "' + hashToSearch + '"'
print '=====================ORIGINAL COMMIT START====================='
git_execute(gitWorkingDir, ['show', hashToSearch])
print '=====================ORIGINAL COMMIT END====================='
print '#####################FOUND MERGES & REVERTS START#####################'
git_execute(gitWorkingDir, ["log",'--all', '--grep='+hashToSearch])
print '#####################FOUND MERGES & REVERTS END#####################'
print 'Finished successfully'
def git_execute(workingDir, commands):
return call(["git", '-C', workingDir] + commands)
if __name__ == "__main__": # pragma: no cover
parser = argparse.ArgumentParser('Tool to check where a git commit was merged and reverted.')
parser.add_argument("-g", "--git-dir", required=False, default='.',
help="The path to your git working directory.")
parser.add_argument('hash', nargs=1, help="Hash of the commit to be searched.")
args = sys.argv[1:]
options = parser.parse_args(args)
sys.exit(print_analysis(options.git_dir, options.hash[0]))