Merge branch 'ls/p4-retry-thrice'
authorJunio C Hamano <gitster@pobox.com>
Wed, 18 Jan 2017 23:12:12 +0000 (15:12 -0800)
committerJunio C Hamano <gitster@pobox.com>
Wed, 18 Jan 2017 23:12:12 +0000 (15:12 -0800)
A recent updates to "git p4" was not usable for older p4 but it
could be made to work with minimum changes. Do so.

* ls/p4-retry-thrice:
git-p4: do not pass '-r 0' to p4 commands

Documentation/git-p4.txt
git-p4.py
index bae862ddcb9fe85765ea5bb126ced4fad8e98268..7436c64a95616d84af9922958e4ccacd0c28519a 100644 (file)
@@ -479,6 +479,8 @@ git-p4.client::
 git-p4.retries::
        Specifies the number of times to retry a p4 command (notably,
        'p4 sync') if the network times out. The default value is 3.
+       Set the value to 0 to disable retries or if your p4 version
+       does not support retries (pre 2012.2).
 
 Clone and sync variables
 ~~~~~~~~~~~~~~~~~~~~~~~~
index 22e3f57e7d93783ef6bb3f0bfd4ef2f6bbd0f93f..7bda915bd0c9af438d7303abaabf53fc15f9a5dd 100755 (executable)
--- a/git-p4.py
+++ b/git-p4.py
@@ -83,7 +83,9 @@ def p4_build_cmd(cmd):
     if retries is None:
         # Perform 3 retries by default
         retries = 3
-    real_cmd += ["-r", str(retries)]
+    if retries > 0:
+        # Provide a way to not pass this option by setting git-p4.retries to 0
+        real_cmd += ["-r", str(retries)]
 
     if isinstance(cmd,basestring):
         real_cmd = ' '.join(real_cmd) + ' ' + cmd