git_squash_branch.py 764 Bytes
Newer Older
1 2 3 4 5 6 7 8
#!/usr/bin/env python
# Copyright 2014 The Chromium 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 sys

9
import git_common
10 11 12 13 14 15 16

def main(args):
  parser = argparse.ArgumentParser()
  parser.add_argument(
      '-m', '--message', metavar='<msg>', default='git squash commit.',
      help='Use the given <msg> as the first line of the commit message.')
  opts = parser.parse_args(args)
17 18 19
  if git_common.is_dirty_git_tree('squash-branch'):
    return 1
  git_common.squash_current_branch(opts.message)
20 21
  return 0

22 23

if __name__ == '__main__':
24 25 26 27 28
  try:
    sys.exit(main(sys.argv[1:]))
  except KeyboardInterrupt:
    sys.stderr.write('interrupted\n')
    sys.exit(1)