beb5af43a6
Previously, graph_is_interesting() did not behave quite the same way as the code in get_revision(). As a result, it would sometimes think commits were uninteresting, even though get_revision() would return them. This resulted in incorrect lines in the graph output. This change creates a get_commit_action() function, which graph_is_interesting() and simplify_commit() both now use to determine if a commit will be shown. It is identical to the old simplify_commit() behavior, except that it never calls rewrite_parents(). This problem was reported by Santi Béjar. The following command would exhibit the problem before, but now works correctly: git log --graph --simplify-by-decoration --oneline v1.6.3.3 Previously git graph did not display the output for this command correctly betweenf29ac4f
and66996ec
, among other places. Signed-off-by: Adam Simpkins <simpkins@facebook.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
32 lines
862 B
Bash
Executable File
32 lines
862 B
Bash
Executable File
#!/bin/sh
|
|
|
|
test_description='--show-all --parents does not rewrite TREESAME commits'
|
|
|
|
. ./test-lib.sh
|
|
|
|
test_expect_success 'set up --show-all --parents test' '
|
|
test_commit one foo.txt &&
|
|
commit1=`git rev-list -1 HEAD` &&
|
|
test_commit two bar.txt &&
|
|
commit2=`git rev-list -1 HEAD` &&
|
|
test_commit three foo.txt &&
|
|
commit3=`git rev-list -1 HEAD`
|
|
'
|
|
|
|
test_expect_success '--parents rewrites TREESAME parents correctly' '
|
|
echo $commit3 $commit1 > expected &&
|
|
echo $commit1 >> expected &&
|
|
git rev-list --parents HEAD -- foo.txt > actual &&
|
|
test_cmp expected actual
|
|
'
|
|
|
|
test_expect_success '--parents --show-all does not rewrites TREESAME parents' '
|
|
echo $commit3 $commit2 > expected &&
|
|
echo $commit2 $commit1 >> expected &&
|
|
echo $commit1 >> expected &&
|
|
git rev-list --parents --show-all HEAD -- foo.txt > actual &&
|
|
test_cmp expected actual
|
|
'
|
|
|
|
test_done
|