Browse Source
We used to set the TOPOSORT flag of commits during the topological sorting, but we can just as well use the member "indegree" for it: indegree is now incremented by 1 in the cases where the commit used to have the TOPOSORT flag. This is the same behavior as before, since indegree could not be non-zero when TOPOSORT was unset. Incidentally, this fixes the bug in show-branch where the 8th column was not shown: show-branch sorts the commits in topological order, assuming that all the commit flags are available for show-branch's private matters. But this was not true: TOPOSORT was identical to the flag corresponding to the 8th ref. So the flags for the 8th column were unset by the topological sorting. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>maint
Johannes Schindelin
17 years ago
committed by
Junio C Hamano
3 changed files with 65 additions and 8 deletions
@ -0,0 +1,59 @@
@@ -0,0 +1,59 @@
|
||||
#!/bin/sh |
||||
|
||||
test_description='test show-branch with more than 8 heads' |
||||
|
||||
. ./test-lib.sh |
||||
|
||||
numbers="1 2 3 4 5 6 7 8 9 10" |
||||
|
||||
test_expect_success 'setup' ' |
||||
|
||||
> file && |
||||
git add file && |
||||
test_tick && |
||||
git commit -m initial && |
||||
|
||||
for i in $numbers |
||||
do |
||||
git checkout -b branch$i master && |
||||
> file$i && |
||||
git add file$i && |
||||
test_tick && |
||||
git commit -m branch$i || break |
||||
done |
||||
|
||||
' |
||||
|
||||
cat > expect << EOF |
||||
! [branch1] branch1 |
||||
! [branch2] branch2 |
||||
! [branch3] branch3 |
||||
! [branch4] branch4 |
||||
! [branch5] branch5 |
||||
! [branch6] branch6 |
||||
! [branch7] branch7 |
||||
! [branch8] branch8 |
||||
! [branch9] branch9 |
||||
* [branch10] branch10 |
||||
---------- |
||||
* [branch10] branch10 |
||||
+ [branch9] branch9 |
||||
+ [branch8] branch8 |
||||
+ [branch7] branch7 |
||||
+ [branch6] branch6 |
||||
+ [branch5] branch5 |
||||
+ [branch4] branch4 |
||||
+ [branch3] branch3 |
||||
+ [branch2] branch2 |
||||
+ [branch1] branch1 |
||||
+++++++++* [branch10^] initial |
||||
EOF |
||||
|
||||
test_expect_success 'show-branch with more than 8 branches' ' |
||||
|
||||
git show-branch $(for i in $numbers; do echo branch$i; done) > out && |
||||
test_cmp expect out |
||||
|
||||
' |
||||
|
||||
test_done |
Loading…
Reference in new issue