Mercurial > hg-stable
comparison tests/test-log.t @ 23500:9601229ed361 stable
log: fix log -f slow path to actually follow history
The revset created when -f was used with a slow path (for patterns and
directories) did not actually contain any logic to enforce follow. Instead it
was depending on the passed in subset to already be limited (which was limited
to :. but not ::.). This fixes it by adding a '& ::.' to any -f log revset.
hg log -f <file> is still broken, in that it can return results that aren't
actually ancestors of the current file, but fixing that has major perf
implications, so we'll deal with it later.
author | Durham Goode <durham@fb.com> |
---|---|
date | Fri, 05 Dec 2014 14:27:32 -0800 |
parents | c1aede895072 |
children | c48924787eaa |
comparison
equal
deleted
inserted
replaced
23478:30b602168c3b | 23500:9601229ed361 |
---|---|
1541 user: | 1541 user: |
1542 date: Thu Jan 01 00:00:00 1970 +0000 | 1542 date: Thu Jan 01 00:00:00 1970 +0000 |
1543 | 1543 |
1544 | 1544 |
1545 $ cd .. | 1545 $ cd .. |
1546 | |
1547 hg log -f dir across branches | |
1548 | |
1549 $ hg init acrossbranches | |
1550 $ cd acrossbranches | |
1551 $ mkdir d | |
1552 $ echo a > d/a && hg ci -Aqm a | |
1553 $ echo b > d/a && hg ci -Aqm b | |
1554 $ hg up -q 0 | |
1555 $ echo b > d/a && hg ci -Aqm c | |
1556 $ hg log -f d -T '{desc}' -G | |
1557 @ c | |
1558 | | |
1559 o a | |
1560 | |
1561 $ hg log -f d/a -T '{desc}' -G | |
1562 o b | |
1563 | | |
1564 o a | |
1565 | |
1566 $ cd .. |