From 552ac89929db1794200290550dccdd7f3078d13f Mon Sep 17 00:00:00 2001 From: "Shawn O. Pearce" Date: Sat, 18 Apr 2009 15:15:24 -0700 Subject: Modify 'repo abandon' to be more like 'repo checkout' and 'repo start' Signed-off-by: Shawn O. Pearce --- subcmds/abandon.py | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) (limited to 'subcmds/abandon.py') diff --git a/subcmds/abandon.py b/subcmds/abandon.py index 4f976d7b..8af61327 100644 --- a/subcmds/abandon.py +++ b/subcmds/abandon.py @@ -16,6 +16,7 @@ import sys from command import Command from git_command import git +from progress import Progress class Abandon(Command): common = True @@ -38,5 +39,23 @@ It is equivalent to "git branch -D ". print >>sys.stderr, "error: '%s' is not a valid name" % nb sys.exit(1) - for project in self.GetProjects(args[1:]): - project.AbandonBranch(nb) + nb = args[0] + err = [] + all = self.GetProjects(args[1:]) + + pm = Progress('Abandon %s' % nb, len(all)) + for project in all: + pm.update() + if not project.AbandonBranch(nb): + err.append(project) + pm.end() + + if err: + if len(err) == len(all): + print >>sys.stderr, 'error: no project has branch %s' % nb + else: + for p in err: + print >>sys.stderr,\ + "error: %s/: cannot abandon %s" \ + % (p.relpath, nb) + sys.exit(1) -- cgit v1.2.3-54-g00ecf