# Use git show rather than some plumbing command to figure out which revs
# are in rev_range because it handles single revs (HEAD^) and ranges
# (foo..bar) like we want.
- revs = git('show', '--reverse', '--quiet',
+ return git('show', '--reverse', '--quiet',
'--pretty=%h', rev_range).splitlines()
- if not revs:
- die('Nothing to push: No revs in range %s.' % rev_range)
- return revs
def clean_svn(svn_repo):
rev_range = args.rev_range
dry_run = args.dry_run
revs = get_revs_to_push(rev_range)
+
+ if not args.force and not revs:
+ die('Nothing to push: No revs in range %s.' % rev_range)
+
log('%sPushing %d %s commit%s:\n%s' %
('[DryRun] ' if dry_run else '', len(revs),
'split-repo (%s)' % split_repo_path
for c in revs)))
# Ask confirmation if multiple commits are about to be pushed
- if not args.force and len(revs) != 1:
+ if not args.force and len(revs) > 1:
if not ask_confirm("Are you sure you want to create %d commits?" % len(revs)):
die("Aborting")