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

[PATCH 07/16] t/t5516-fetch-push: don't use branches-file

From
Ramkumar Ramachandra <artagnon@gmail.com>
Date
Jun 21, 2013, 11:12 UTC
Message-ID
<1371813160-4200-8-git-send-email-artagnon@gmail.com>
In-Reply-To
<1371813160-4200-1-git-send-email-artagnon@gmail.com>

Four tests exercising fetch and push functionality unnecessarily depend on $GIT_DIR/branches files. Modern Git does not encourage the use of those files, and the parser remote.c:read_branches_file() is only provided for backward compatibility with older repositories. We already have tests in t/t5505-remote to verify that the parser works: so, substitute the $GIT_DIR/branches configuration with an equivalent gitconfig-style configuration, using the results of those tests.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
---
 t/t5516-fetch-push.sh | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)
diff --git a/t/t5516-fetch-push.sh b/t/t5516-fetch-push.sh
index 4691d51..6e9fa84 100755
--- a/t/t5516-fetch-push.sh
+++ b/t/t5516-fetch-push.sh
@@ -852,9 +852,11 @@ test_expect_success 'fetch with branches' '
 	mk_empty testrepo &&
 	git branch second $the_first_commit &&
 	git checkout second &&
-	echo ".." > testrepo/.git/branches/branch1 &&
 	(
 		cd testrepo &&
+		test_config remote.branch1.url ".."  &&
+		test_config remote.branch1.fetch "refs/heads/master:refs/heads/branch1"  &&
+		test_config remote.branch1.push "HEAD:refs/heads/master"  &&
 		git fetch branch1 &&
 		echo "$the_commit commit	refs/heads/branch1" >expect &&
 		git for-each-ref refs/heads >actual &&
@@ -865,9 +867,11 @@ test_expect_success 'fetch with branches' '
 
 test_expect_success 'fetch with branches containing #' '
 	mk_empty testrepo &&
-	echo "..#second" > testrepo/.git/branches/branch2 &&
 	(
 		cd testrepo &&
+		test_config remote.branch2.url ".."  &&
+		test_config remote.branch2.fetch "refs/heads/second:refs/heads/branch2"  &&
+		test_config remote.branch2.push "HEAD:refs/heads/second"  &&
 		git fetch branch2 &&
 		echo "$the_first_commit commit	refs/heads/branch2" >expect &&
 		git for-each-ref refs/heads >actual &&
@@ -879,7 +883,9 @@ test_expect_success 'fetch with branches containing #' '
 test_expect_success 'push with branches' '
 	mk_empty testrepo &&
 	git checkout second &&
-	echo "testrepo" > .git/branches/branch1 &&
+	test_config remote.branch1.url testrepo &&
+	test_config remote.branch1.fetch "refs/heads/master:refs/heads/branch1" &&
+	test_config remote.branch1.push "HEAD:refs/heads/master" &&
 	git push branch1 &&
 	(
 		cd testrepo &&
@@ -891,7 +897,9 @@ test_expect_success 'push with branches' '
 
 test_expect_success 'push with branches containing #' '
 	mk_empty testrepo &&
-	echo "testrepo#branch3" > .git/branches/branch2 &&
+	test_config remote.branch2.url testrepo &&
+	test_config remote.branch2.fetch "refs/heads/branch3:refs/heads/branch2" &&
+	test_config remote.branch2.push "HEAD:refs/heads/branch3" &&
 	git push branch2 &&
 	(
 		cd testrepo &&
-- 
1.8.3.1.499.g7ad3486.dirty
Previous: Ramkumar RamachandraNext: Junio C Hamano
Message 22 of 43 in “Cleanup {branches,remotes}-file cruft”
  1. 00/16 Cleanup {branches,remotes}-file cruftRamkumar Ramachandra, Jun 21, 2013
  2. 01/16 t/t5505-remote: modernize subshell-style of one testRamkumar Ramachandra, Jun 21, 2013
  3. Junio C HamanoJun 21, 2013
  4. Ramkumar RamachandraJun 22, 2013
  5. 02/16 t/t5505-remote: test push-refspec in branches-fileRamkumar Ramachandra, Jun 21, 2013
  6. Junio C HamanoJun 21, 2013
  7. 03/16 t/t5505-remote: use test_path_is_missingRamkumar Ramachandra, Jun 21, 2013
  8. 04/16 t/t5505-remote: remove dependency on $origin_urlRamkumar Ramachandra, Jun 21, 2013
  9. Junio C HamanoJun 21, 2013
  10. Ramkumar RamachandraJun 22, 2013
  11. Junio C HamanoJun 22, 2013
  12. Ramkumar RamachandraJun 23, 2013
  13. 05/16 remote: remove dead code in read_branches_file()Ramkumar Ramachandra, Jun 21, 2013
  14. Junio C HamanoJun 21, 2013
  15. Ramkumar RamachandraJun 22, 2013
  16. Junio C HamanoJun 23, 2013
  17. Ramkumar RamachandraJun 23, 2013
  18. Junio C HamanoJun 23, 2013
  19. 06/16 t/t5505-remote: test url-with-# in branches-fileRamkumar Ramachandra, Jun 21, 2013
  20. Junio C HamanoJun 21, 2013
  21. Ramkumar RamachandraJun 22, 2013
  22. 07/16 t/t5516-fetch-push: don't use branches-fileRamkumar Ramachandra, Jun 21, 2013
  23. Junio C HamanoJun 21, 2013
  24. 08/16 t/t5516-fetch-push: use test_config()Ramkumar Ramachandra, Jun 21, 2013
  25. Junio C HamanoJun 21, 2013
  26. Ramkumar RamachandraJun 22, 2013
  27. Johannes SixtJun 22, 2013
  28. 09/16 ls-remote doc: fix example invocation on git.gitRamkumar Ramachandra, Jun 21, 2013
  29. Junio C HamanoJun 21, 2013
  30. 10/16 ls-remote doc: rewrite <repository> paragraphRamkumar Ramachandra, Jun 21, 2013
  31. Junio C HamanoJun 21, 2013
  32. 11/16 ls-remote doc: don't encourage use of branches-fileRamkumar Ramachandra, Jun 21, 2013
  33. 12/16 t/t5505-remote: modernize subshell-style of one testRamkumar Ramachandra, Jun 21, 2013
  34. 13/16 t/t5505-remote: test multiple push/pull in remotes-fileRamkumar Ramachandra, Jun 21, 2013
  35. Eric SunshineJun 21, 2013
  36. Ramkumar RamachandraJun 22, 2013
  37. 14/16 t/t5510-fetch: don't use remotes-fileRamkumar Ramachandra, Jun 21, 2013
  38. 15/16 t/t5515-fetch-merge-logic: don't use {branches,remotes}-fileRamkumar Ramachandra, Jun 21, 2013
  39. 16/16 remote: deprecate read_{branches,remotes}_fileRamkumar Ramachandra, Jun 21, 2013
  40. Junio C HamanoJun 21, 2013
  41. Ramkumar RamachandraJun 21, 2013
  42. Junio C HamanoJun 21, 2013
  43. Ramkumar RamachandraJun 21, 2013

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.