summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Luke Diamand <luke@diamand.org>2012-04-24 09:33:23 +0100
committerLibravatar Junio C Hamano <gitster@pobox.com>2012-04-24 14:22:23 -0700
commit6a10b6aa1e7b9bb114e525edb67b7650b46f333e (patch)
treede42e5eae3f54afac793510fbf7ae3030a7c727d
parentgit p4: Ignore P4EDITOR if it is empty (diff)
downloadtgif-6a10b6aa1e7b9bb114e525edb67b7650b46f333e.tar.xz
git p4: move verbose to base class
The verbose flag is common to all classes, or at least should be. Make it a member of the base Command class, rather than reimplementing for each class. Make option parsing mirror this. Signed-off-by: Luke Diamand <luke@diamand.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--Documentation/git-p4.txt11
-rwxr-xr-xgit-p4.py31
2 files changed, 14 insertions, 28 deletions
diff --git a/Documentation/git-p4.txt b/Documentation/git-p4.txt
index 01cc97bb11..51955a5f7c 100644
--- a/Documentation/git-p4.txt
+++ b/Documentation/git-p4.txt
@@ -158,11 +158,14 @@ OPTIONS
General options
~~~~~~~~~~~~~~~
-All commands except clone accept this option.
+All commands except clone accept these options.
--git-dir <dir>::
Set the 'GIT_DIR' environment variable. See linkgit:git[1].
+--verbose::
+ Provide more progress information.
+
Sync options
~~~~~~~~~~~~
These options can be used in the initial 'clone' as well as in
@@ -193,9 +196,6 @@ git repository:
--silent::
Do not print any progress information.
---verbose::
- Provide more progress information.
-
--detect-labels::
Query p4 for labels associated with the depot paths, and add
them as tags in git. Limited usefulness as only imports labels
@@ -249,9 +249,6 @@ Submit options
~~~~~~~~~~~~~~
These options can be used to modify 'git p4 submit' behavior.
---verbose::
- Provide more progress information.
-
--origin <commit>::
Upstream location from which commits are identified to submit to
p4. By default, this is the most recent p4 commit reachable
diff --git a/git-p4.py b/git-p4.py
index 6ce88ffb51..eab69590c4 100755
--- a/git-p4.py
+++ b/git-p4.py
@@ -662,6 +662,7 @@ class Command:
def __init__(self):
self.usage = "usage: %prog [options]"
self.needsGit = True
+ self.verbose = False
class P4UserMap:
def __init__(self):
@@ -727,13 +728,9 @@ class P4UserMap:
class P4Debug(Command):
def __init__(self):
Command.__init__(self)
- self.options = [
- optparse.make_option("--verbose", dest="verbose", action="store_true",
- default=False),
- ]
+ self.options = []
self.description = "A tool to debug the output of p4 -G."
self.needsGit = False
- self.verbose = False
def run(self, args):
j = 0
@@ -747,11 +744,9 @@ class P4RollBack(Command):
def __init__(self):
Command.__init__(self)
self.options = [
- optparse.make_option("--verbose", dest="verbose", action="store_true"),
optparse.make_option("--local", dest="rollbackLocalBranches", action="store_true")
]
self.description = "A tool to debug the multi-branch import. Don't use :)"
- self.verbose = False
self.rollbackLocalBranches = False
def run(self, args):
@@ -809,7 +804,6 @@ class P4Submit(Command, P4UserMap):
Command.__init__(self)
P4UserMap.__init__(self)
self.options = [
- optparse.make_option("--verbose", dest="verbose", action="store_true"),
optparse.make_option("--origin", dest="origin"),
optparse.make_option("-M", dest="detectRenames", action="store_true"),
# preserve the user, requires relevant p4 permissions
@@ -821,7 +815,6 @@ class P4Submit(Command, P4UserMap):
self.interactive = True
self.origin = ""
self.detectRenames = False
- self.verbose = False
self.preserveUser = gitConfig("git-p4.preserveUser").lower() == "true"
self.isWindows = (platform.system() == "Windows")
self.exportLabels = False
@@ -1644,7 +1637,6 @@ class P4Sync(Command, P4UserMap):
optparse.make_option("--silent", dest="silent", action="store_true"),
optparse.make_option("--detect-labels", dest="detectLabels", action="store_true"),
optparse.make_option("--import-labels", dest="importLabels", action="store_true"),
- optparse.make_option("--verbose", dest="verbose", action="store_true"),
optparse.make_option("--import-local", dest="importIntoRemotes", action="store_false",
help="Import into refs/heads/ , not refs/remotes"),
optparse.make_option("--max-changes", dest="maxChanges"),
@@ -1671,7 +1663,6 @@ class P4Sync(Command, P4UserMap):
self.importLabels = False
self.changesFile = ""
self.syncWithOrigin = True
- self.verbose = False
self.importIntoRemotes = True
self.maxChanges = ""
self.isWindows = (platform.system() == "Windows")
@@ -2712,9 +2703,7 @@ class P4Rebase(Command):
Command.__init__(self)
self.options = [
optparse.make_option("--import-labels", dest="importLabels", action="store_true"),
- optparse.make_option("--verbose", dest="verbose", action="store_true"),
]
- self.verbose = False
self.importLabels = False
self.description = ("Fetches the latest revision from perforce and "
+ "rebases the current work (branch) against it")
@@ -2911,16 +2900,16 @@ def main():
args = sys.argv[2:]
- if len(options) > 0:
- if cmd.needsGit:
- options.append(optparse.make_option("--git-dir", dest="gitdir"))
+ options.append(optparse.make_option("--verbose", dest="verbose", action="store_true"))
+ if cmd.needsGit:
+ options.append(optparse.make_option("--git-dir", dest="gitdir"))
- parser = optparse.OptionParser(cmd.usage.replace("%prog", "%prog " + cmdName),
- options,
- description = cmd.description,
- formatter = HelpFormatter())
+ parser = optparse.OptionParser(cmd.usage.replace("%prog", "%prog " + cmdName),
+ options,
+ description = cmd.description,
+ formatter = HelpFormatter())
- (cmd, args) = parser.parse_args(sys.argv[2:], cmd);
+ (cmd, args) = parser.parse_args(sys.argv[2:], cmd);
global verbose
verbose = cmd.verbose
if cmd.needsGit: