git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 07/11] git-p4: document and test --import-local

From
PWPete Wyckoff <pw@padd.com>
Date
Dec 17, 2011, 18:52 UTC
Message-ID
<1324147942-21558-8-git-send-email-pw@padd.com>
In-Reply-To
<1324147942-21558-1-git-send-email-pw@padd.com>

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>
---
 Documentation/git-p4.txt |    4 +++-
 t/t9806-options.sh       |   22 ++++++++++++++++++++++
 2 files changed, 25 insertions(+), 1 deletions(-)
diff --git a/Documentation/git-p4.txt b/Documentation/git-p4.txt
index a5d3d81..2885b82 100644
--- a/Documentation/git-p4.txt
+++ b/Documentation/git-p4.txt
@@ -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
diff --git a/t/t9806-options.sh b/t/t9806-options.sh
index 7a1dba6..6770326 100755
--- a/t/t9806-options.sh
+++ b/t/t9806-options.sh
@@ -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
 '
-- 
1.7.8.258.g45cc3c
Previous: Pete WyckoffNext: Pete Wyckoff
Message 16 of 20 in “git-p4: asciidoc documentation and fixes”
  1. 00/11 git-p4: asciidoc documentation and fixesPete Wyckoff, Dec 17, 2011
  2. 01/11 git-p4: introduce asciidoc documentationPete Wyckoff, Dec 17, 2011
  3. 02/11 git-p4: test debug macroPete Wyckoff, Dec 17, 2011
  4. Luke DiamandDec 17, 2011
  5. 02/11 git-p4: test debug macroPete Wyckoff, Dec 18, 2011
  6. Jonathan NiederDec 18, 2011
  7. Pete WyckoffDec 18, 2011
  8. 02/11 git-p4: test debug macroPete Wyckoff, Dec 18, 2011
  9. Luke DiamandDec 18, 2011
  10. Junio C HamanoDec 18, 2011
  11. Pete WyckoffDec 20, 2011
  12. 03/11 git-p4: clone does not use --git-dirPete Wyckoff, Dec 17, 2011
  13. 04/11 git-p4: test cloning with two dirs, clarify docPete Wyckoff, Dec 17, 2011
  14. 05/11 git-p4: document and test clone --branchPete Wyckoff, Dec 17, 2011
  15. 06/11 git-p4: honor --changesfile option and testPete Wyckoff, Dec 17, 2011
  16. 07/11 git-p4: document and test --import-localPete Wyckoff, Dec 17, 2011
  17. 08/11 git-p4: test --max-changesPete Wyckoff, Dec 17, 2011
  18. 09/11 git-p4: test --keep-pathPete Wyckoff, Dec 17, 2011
  19. 10/11 git-p4: test and document --use-client-specPete Wyckoff, Dec 17, 2011
  20. 11/11 git-p4: document and test submit optionsPete Wyckoff, Dec 17, 2011

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.