From 1471c6b1558f45fa11ad606fc9ea72261d965284 Mon Sep 17 00:00:00 2001 From: Pete Wyckoff Date: Sat, 24 Dec 2011 21:07:34 -0500 Subject: [PATCH] git-p4: document and test clone --branch Clone with --branch will not checkout HEAD, unless the branch happens to be called the default refs/remotes/p4/master. The --branch option is most useful with sync; give an example of that. Signed-off-by: Pete Wyckoff Signed-off-by: Junio C Hamano --- Documentation/git-p4.txt | 10 +++++++++- t/t9806-git-p4-options.sh | 11 +++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/Documentation/git-p4.txt b/Documentation/git-p4.txt index befb21704a..9305e09987 100644 --- a/Documentation/git-p4.txt +++ b/Documentation/git-p4.txt @@ -178,7 +178,15 @@ subsequent 'sync' operations. --branch :: Import changes into given branch. If the branch starts with 'refs/', it will be used as is, otherwise the path 'refs/heads/' - will be prepended. The default branch is 'master'. + will be prepended. The default branch is 'master'. If used + with an initial clone, no HEAD will be checked out. ++ +This example imports a new remote "p4/proj2" into an existing +git repository: +---- + $ git init + $ git p4 sync --branch=refs/remotes/p4/proj2 //depot/proj2 +---- --detect-branches:: Use the branch detection algorithm to find new paths in p4. It is diff --git a/t/t9806-git-p4-options.sh b/t/t9806-git-p4-options.sh index 8044fb035e..7e2e45af17 100755 --- a/t/t9806-git-p4-options.sh +++ b/t/t9806-git-p4-options.sh @@ -27,6 +27,17 @@ test_expect_success 'clone no --git-dir' ' test_must_fail "$GITP4" clone --git-dir=xx //depot ' +test_expect_success 'clone --branch' ' + "$GITP4" clone --branch=refs/remotes/p4/sb --dest="$git" //depot && + test_when_finished cleanup_git && + ( + cd "$git" && + git ls-files >files && + test_line_count = 0 files && + test_path_is_file .git/refs/remotes/p4/sb + ) +' + test_expect_success 'kill p4d' ' kill_p4d '