diff --git a/contrib/fast-import/git-p4 b/contrib/fast-import/git-p4 index 594980302b..dafc4a2c82 100755 --- a/contrib/fast-import/git-p4 +++ b/contrib/fast-import/git-p4 @@ -2335,7 +2335,8 @@ def main(): args = sys.argv[2:] if len(options) > 0: - options.append(optparse.make_option("--git-dir", dest="gitdir")) + if cmd.needsGit: + options.append(optparse.make_option("--git-dir", dest="gitdir")) parser = optparse.OptionParser(cmd.usage.replace("%prog", "%prog " + cmdName), options, diff --git a/t/t9806-git-p4-options.sh b/t/t9806-git-p4-options.sh new file mode 100755 index 0000000000..8044fb035e --- /dev/null +++ b/t/t9806-git-p4-options.sh @@ -0,0 +1,34 @@ +#!/bin/sh + +test_description='git-p4 options' + +. ./lib-git-p4.sh + +test_expect_success 'start p4d' ' + start_p4d +' + +test_expect_success 'init depot' ' + ( + cd "$cli" && + echo file1 >file1 && + p4 add file1 && + p4 submit -d "change 1" && + echo file2 >file2 && + p4 add file2 && + p4 submit -d "change 2" && + echo file3 >file3 && + p4 add file3 && + p4 submit -d "change 3" + ) +' + +test_expect_success 'clone no --git-dir' ' + test_must_fail "$GITP4" clone --git-dir=xx //depot +' + +test_expect_success 'kill p4d' ' + kill_p4d +' + +test_done