ef7e6fb165
[-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}
38 lines
1.4 KiB
Python
Executable File
38 lines
1.4 KiB
Python
Executable File
#!/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]))
|