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

[PATCH v3 2/9] t6019: test file dropped in -s ours merge

From
Kevin Bracey <kevin@bracey.fi>
Date
May 5, 2013, 15:32 UTC
Message-ID
<1367767977-14513-3-git-send-email-kevin@bracey.fi>
In-Reply-To
<1367767977-14513-1-git-send-email-kevin@bracey.fi>

In preparation for upcoming TREESAME work, check the result for G.t, which is dropped in "-s ours" merge L. The default rev-list is empty, as expected - it follows the first parent path where it never existed.

Unfortunately, --ancestry-path is also empty. Merges H J and L are all TREESAME to 1 parent, so are treated as TREESAME and not shown. This is clearly undesirable in the case of merge L, which dropped our G.t by taking the non-ancestry-path version. Document this as a known failure, and expect "H J L", the 3 merges along the path that had to chose G.t versions.

Signed-off-by: Kevin Bracey <kevin@bracey.fi>
---
 t/t6019-rev-list-ancestry-path.sh | 21 ++++++++++++++++++++-
 1 file changed, 20 insertions(+), 1 deletion(-)
diff --git a/t/t6019-rev-list-ancestry-path.sh b/t/t6019-rev-list-ancestry-path.sh
index 39b4cb0..86ef908 100755
--- a/t/t6019-rev-list-ancestry-path.sh
+++ b/t/t6019-rev-list-ancestry-path.sh
@@ -13,6 +13,9 @@ test_description='--ancestry-path'
 #
 #  D..M -- M.t                 == M
 #  --ancestry-path D..M -- M.t == M
+#
+#  G..M -- G.t                 == [nothing - was dropped in "-s ours" merge L]
+#  --ancestry-path G..M -- G.t == H J L
 
 . ./test-lib.sh
 
@@ -63,13 +66,29 @@ test_expect_success 'rev-list D..M -- M.t' '
 	test_cmp expect actual
 '
 
-test_expect_success 'rev-list --ancestry-patch D..M -- M.t' '
+test_expect_success 'rev-list --ancestry-path D..M -- M.t' '
 	echo M >expect &&
 	git rev-list --ancestry-path --format=%s D..M -- M.t |
 	sed -e "/^commit /d" >actual &&
 	test_cmp expect actual
 '
 
+# G.t is dropped in an "-s ours" merge
+test_expect_success 'rev-list G..M -- G.t' '
+	>expect &&
+	git rev-list --format=%s G..M -- G.t |
+	sed -e "/^commit /d" >actual &&
+	test_cmp expect actual
+'
+
+test_expect_failure 'rev-list --ancestry-path G..M -- G.t' '
+	for c in H J L; do echo $c; done >expect &&
+	git rev-list --ancestry-path --format=%s G..M -- G.t |
+	sed -e "/^commit /d" |
+	sort >actual &&
+	test_cmp expect actual
+'
+
 #   b---bc
 #  / \ /
 # a   X
-- 
1.8.3.rc0.28.g682c2d9
Previous: Kevin BraceyNext: Kevin Bracey
Message 3 of 20 in “History traversal refinements”
  1. 0/9 History traversal refinementsKevin Bracey, May 5, 2013
  2. 1/9 decorate.c: compact table when growingKevin Bracey, May 5, 2013
  3. 2/9 t6019: test file dropped in -s ours mergeKevin Bracey, May 5, 2013
  4. 3/9 t6111: new TREESAME test setKevin Bracey, May 5, 2013
  5. Junio C HamanoMay 6, 2013
  6. Junio C HamanoMay 6, 2013
  7. Kevin BraceyMay 7, 2013
  8. Junio C HamanoMay 7, 2013
  9. 4/9 rev-list-options.txt: correct TREESAME for PKevin Bracey, May 5, 2013
  10. 5/9 revision.c: Make --full-history consider more mergesKevin Bracey, May 5, 2013
  11. Junio C HamanoMay 6, 2013
  12. Kevin BraceyMay 7, 2013
  13. Junio C HamanoMay 7, 2013
  14. 6/9 t6012: update test for tweaked full-history traversalKevin Bracey, May 5, 2013
  15. 7/9 simplify-merges: never remove all TREESAME parentsKevin Bracey, May 5, 2013
  16. 8/9 simplify-merges: drop merge from irrelevant side branchKevin Bracey, May 5, 2013
  17. 9/9 revision.c: discount side branches when computing TREESAMEKevin Bracey, May 5, 2013
  18. 10/9 revision.c: treat A...B merge bases as if manually specifiedKevin Bracey, May 6, 2013
  19. Junio C HamanoMay 6, 2013
  20. Kevin BraceyMay 7, 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.