Skip to content

Commit

Permalink
git-p4: document and test --import-local
Browse files Browse the repository at this point in the history
Explain that it is needed on future syncs to find p4 branches
in refs/heads.  Test this behavior.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
Pete Wyckoff authored and Junio C Hamano committed Dec 27, 2011
1 parent 58c8bc7 commit 5a92a6c
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 1 deletion.
4 changes: 3 additions & 1 deletion Documentation/git-p4.txt
Original file line number Diff line number Diff line change
Expand Up @@ -211,7 +211,9 @@ git repository:
By default, p4 branches are stored in 'refs/remotes/p4/',
where they will be treated as remote-tracking branches by
linkgit:git-branch[1] and other commands. This option instead
puts p4 branches in 'refs/heads/p4/'.
puts p4 branches in 'refs/heads/p4/'. Note that future
sync operations must specify '--import-local' as well so that
they can find the p4 branches in refs/heads.

--max-changes <n>::
Limit the number of imported changes to 'n'. Useful to
Expand Down
22 changes: 22 additions & 0 deletions t/t9806-git-p4-options.sh
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,28 @@ test_expect_success 'clone --changesfile, @all' '
test_must_fail "$GITP4" clone --changesfile="$cf" --dest="$git" //depot@all
'

# imports both master and p4/master in refs/heads
# requires --import-local on sync to find p4 refs/heads
# does not update master on sync, just p4/master
test_expect_success 'clone/sync --import-local' '
"$GITP4" clone --import-local --dest="$git" //depot@1,2 &&
test_when_finished cleanup_git &&
(
cd "$git" &&
git log --oneline refs/heads/master >lines &&
test_line_count = 2 lines &&
git log --oneline refs/heads/p4/master >lines &&
test_line_count = 2 lines &&
test_must_fail "$GITP4" sync &&
"$GITP4" sync --import-local &&
git log --oneline refs/heads/master >lines &&
test_line_count = 2 lines &&
git log --oneline refs/heads/p4/master >lines &&
test_line_count = 3 lines
)
'

test_expect_success 'kill p4d' '
kill_p4d
'
Expand Down

0 comments on commit 5a92a6c

Please sign in to comment.