##// END OF EJS Templates
merge with stable
Matt Mackall -
r22173:d3702a82 merge default
parent child Browse files
Show More
@@ -267,6 +267,11 b' def overridelog(orig, ui, repo, *pats, *'
267 matchandpats = oldmatchandpats(ctx, pats, opts, globbed, default)
267 matchandpats = oldmatchandpats(ctx, pats, opts, globbed, default)
268 m, p = copy.copy(matchandpats)
268 m, p = copy.copy(matchandpats)
269
269
270 if m.always():
271 # We want to match everything anyway, so there's no benefit trying
272 # to add standins.
273 return matchandpats
274
270 pats = set(p)
275 pats = set(p)
271 # TODO: handling of patterns in both cases below
276 # TODO: handling of patterns in both cases below
272 if m._cwd:
277 if m._cwd:
@@ -299,13 +304,25 b' def overridelog(orig, ui, repo, *pats, *'
299
304
300 return m, pats
305 return m, pats
301
306
307 # For hg log --patch, the match object is used in two different senses:
308 # (1) to determine what revisions should be printed out, and
309 # (2) to determine what files to print out diffs for.
310 # The magic matchandpats override should be used for case (1) but not for
311 # case (2).
312 def overridemakelogfilematcher(repo, pats, opts):
313 pctx = repo[None]
314 match, pats = oldmatchandpats(pctx, pats, opts)
315 return lambda rev: match
316
302 oldmatchandpats = installmatchandpatsfn(overridematchandpats)
317 oldmatchandpats = installmatchandpatsfn(overridematchandpats)
318 oldmakelogfilematcher = cmdutil._makenofollowlogfilematcher
319 setattr(cmdutil, '_makenofollowlogfilematcher', overridemakelogfilematcher)
320
303 try:
321 try:
304 repo.lfstatus = True
305 return orig(ui, repo, *pats, **opts)
322 return orig(ui, repo, *pats, **opts)
306 finally:
323 finally:
307 repo.lfstatus = False
308 restorematchandpatsfn()
324 restorematchandpatsfn()
325 setattr(cmdutil, '_makenofollowlogfilematcher', oldmakelogfilematcher)
309
326
310 def overrideverify(orig, ui, repo, *pats, **opts):
327 def overrideverify(orig, ui, repo, *pats, **opts):
311 large = opts.pop('large', False)
328 large = opts.pop('large', False)
@@ -1500,7 +1500,7 b' def walkchangerevs(repo, match, opts, pr'
1500
1500
1501 return iterate()
1501 return iterate()
1502
1502
1503 def _makelogfilematcher(repo, files, followfirst):
1503 def _makefollowlogfilematcher(repo, files, followfirst):
1504 # When displaying a revision with --patch --follow FILE, we have
1504 # When displaying a revision with --patch --follow FILE, we have
1505 # to know which file of the revision must be diffed. With
1505 # to know which file of the revision must be diffed. With
1506 # --follow, we want the names of the ancestors of FILE in the
1506 # --follow, we want the names of the ancestors of FILE in the
@@ -1527,6 +1527,10 b' def _makelogfilematcher(repo, files, fol'
1527
1527
1528 return filematcher
1528 return filematcher
1529
1529
1530 def _makenofollowlogfilematcher(repo, pats, opts):
1531 '''hook for extensions to override the filematcher for non-follow cases'''
1532 return None
1533
1530 def _makelogrevset(repo, pats, opts, revs):
1534 def _makelogrevset(repo, pats, opts, revs):
1531 """Return (expr, filematcher) where expr is a revset string built
1535 """Return (expr, filematcher) where expr is a revset string built
1532 from log options and file patterns or None. If --stat or --patch
1536 from log options and file patterns or None. If --stat or --patch
@@ -1646,9 +1650,12 b' def _makelogrevset(repo, pats, opts, rev'
1646 if follow and not match.always() and not slowpath:
1650 if follow and not match.always() and not slowpath:
1647 # _makelogfilematcher expects its files argument to be relative to
1651 # _makelogfilematcher expects its files argument to be relative to
1648 # the repo root, so use match.files(), not pats.
1652 # the repo root, so use match.files(), not pats.
1649 filematcher = _makelogfilematcher(repo, match.files(), followfirst)
1653 filematcher = _makefollowlogfilematcher(repo, match.files(),
1654 followfirst)
1650 else:
1655 else:
1651 filematcher = lambda rev: match
1656 filematcher = _makenofollowlogfilematcher(repo, pats, opts)
1657 if filematcher is None:
1658 filematcher = lambda rev: match
1652
1659
1653 expr = []
1660 expr = []
1654 for op, val in opts.iteritems():
1661 for op, val in opts.iteritems():
@@ -724,6 +724,197 b' Test graph log'
724 |
724 |
725 o 0:30d30fe6a5be add files
725 o 0:30d30fe6a5be add files
726
726
727
728 Test log with --patch
729
730 $ hg log --patch -r 6::7
731 changeset: 6:4355d653f84f
732 user: test
733 date: Thu Jan 01 00:00:00 1970 +0000
734 summary: edit files yet again
735
736 diff -r 9d5af5072dbd -r 4355d653f84f .hglf/large3
737 --- a/.hglf/large3 Thu Jan 01 00:00:00 1970 +0000
738 +++ b/.hglf/large3 Thu Jan 01 00:00:00 1970 +0000
739 @@ -1,1 +1,1 @@
740 -baaf12afde9d8d67f25dab6dced0d2bf77dba47c
741 +7838695e10da2bb75ac1156565f40a2595fa2fa0
742 diff -r 9d5af5072dbd -r 4355d653f84f .hglf/sub/large4
743 --- a/.hglf/sub/large4 Thu Jan 01 00:00:00 1970 +0000
744 +++ b/.hglf/sub/large4 Thu Jan 01 00:00:00 1970 +0000
745 @@ -1,1 +1,1 @@
746 -aeb2210d19f02886dde00dac279729a48471e2f9
747 +971fb41e78fea4f8e0ba5244784239371cb00591
748 diff -r 9d5af5072dbd -r 4355d653f84f normal3
749 --- a/normal3 Thu Jan 01 00:00:00 1970 +0000
750 +++ b/normal3 Thu Jan 01 00:00:00 1970 +0000
751 @@ -1,1 +1,1 @@
752 -normal3
753 +normal33
754 diff -r 9d5af5072dbd -r 4355d653f84f sub/normal4
755 --- a/sub/normal4 Thu Jan 01 00:00:00 1970 +0000
756 +++ b/sub/normal4 Thu Jan 01 00:00:00 1970 +0000
757 @@ -1,1 +1,1 @@
758 -normal4
759 +normal44
760
761 changeset: 7:daea875e9014
762 tag: tip
763 user: test
764 date: Thu Jan 01 00:00:00 1970 +0000
765 summary: add/edit more largefiles
766
767 diff -r 4355d653f84f -r daea875e9014 .hglf/large3
768 --- a/.hglf/large3 Thu Jan 01 00:00:00 1970 +0000
769 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
770 @@ -1,1 +0,0 @@
771 -7838695e10da2bb75ac1156565f40a2595fa2fa0
772 diff -r 4355d653f84f -r daea875e9014 .hglf/sub2/large6
773 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
774 +++ b/.hglf/sub2/large6 Thu Jan 01 00:00:00 1970 +0000
775 @@ -0,0 +1,1 @@
776 +0d6d75887db61b2c7e6c74b5dd8fc6ad50c0cc30
777 diff -r 4355d653f84f -r daea875e9014 .hglf/sub2/large7
778 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
779 +++ b/.hglf/sub2/large7 Thu Jan 01 00:00:00 1970 +0000
780 @@ -0,0 +1,1 @@
781 +bb3151689acb10f0c3125c560d5e63df914bc1af
782
783
784 $ hg log --patch -r 6::7 sub/
785 changeset: 6:4355d653f84f
786 user: test
787 date: Thu Jan 01 00:00:00 1970 +0000
788 summary: edit files yet again
789
790 diff -r 9d5af5072dbd -r 4355d653f84f .hglf/sub/large4
791 --- a/.hglf/sub/large4 Thu Jan 01 00:00:00 1970 +0000
792 +++ b/.hglf/sub/large4 Thu Jan 01 00:00:00 1970 +0000
793 @@ -1,1 +1,1 @@
794 -aeb2210d19f02886dde00dac279729a48471e2f9
795 +971fb41e78fea4f8e0ba5244784239371cb00591
796 diff -r 9d5af5072dbd -r 4355d653f84f sub/normal4
797 --- a/sub/normal4 Thu Jan 01 00:00:00 1970 +0000
798 +++ b/sub/normal4 Thu Jan 01 00:00:00 1970 +0000
799 @@ -1,1 +1,1 @@
800 -normal4
801 +normal44
802
803
804 log with both --follow and --patch
805
806 $ hg log --follow --patch --limit 2
807 changeset: 7:daea875e9014
808 tag: tip
809 user: test
810 date: Thu Jan 01 00:00:00 1970 +0000
811 summary: add/edit more largefiles
812
813 diff -r 4355d653f84f -r daea875e9014 .hglf/large3
814 --- a/.hglf/large3 Thu Jan 01 00:00:00 1970 +0000
815 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
816 @@ -1,1 +0,0 @@
817 -7838695e10da2bb75ac1156565f40a2595fa2fa0
818 diff -r 4355d653f84f -r daea875e9014 .hglf/sub2/large6
819 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
820 +++ b/.hglf/sub2/large6 Thu Jan 01 00:00:00 1970 +0000
821 @@ -0,0 +1,1 @@
822 +0d6d75887db61b2c7e6c74b5dd8fc6ad50c0cc30
823 diff -r 4355d653f84f -r daea875e9014 .hglf/sub2/large7
824 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
825 +++ b/.hglf/sub2/large7 Thu Jan 01 00:00:00 1970 +0000
826 @@ -0,0 +1,1 @@
827 +bb3151689acb10f0c3125c560d5e63df914bc1af
828
829 changeset: 6:4355d653f84f
830 user: test
831 date: Thu Jan 01 00:00:00 1970 +0000
832 summary: edit files yet again
833
834 diff -r 9d5af5072dbd -r 4355d653f84f .hglf/large3
835 --- a/.hglf/large3 Thu Jan 01 00:00:00 1970 +0000
836 +++ b/.hglf/large3 Thu Jan 01 00:00:00 1970 +0000
837 @@ -1,1 +1,1 @@
838 -baaf12afde9d8d67f25dab6dced0d2bf77dba47c
839 +7838695e10da2bb75ac1156565f40a2595fa2fa0
840 diff -r 9d5af5072dbd -r 4355d653f84f .hglf/sub/large4
841 --- a/.hglf/sub/large4 Thu Jan 01 00:00:00 1970 +0000
842 +++ b/.hglf/sub/large4 Thu Jan 01 00:00:00 1970 +0000
843 @@ -1,1 +1,1 @@
844 -aeb2210d19f02886dde00dac279729a48471e2f9
845 +971fb41e78fea4f8e0ba5244784239371cb00591
846 diff -r 9d5af5072dbd -r 4355d653f84f normal3
847 --- a/normal3 Thu Jan 01 00:00:00 1970 +0000
848 +++ b/normal3 Thu Jan 01 00:00:00 1970 +0000
849 @@ -1,1 +1,1 @@
850 -normal3
851 +normal33
852 diff -r 9d5af5072dbd -r 4355d653f84f sub/normal4
853 --- a/sub/normal4 Thu Jan 01 00:00:00 1970 +0000
854 +++ b/sub/normal4 Thu Jan 01 00:00:00 1970 +0000
855 @@ -1,1 +1,1 @@
856 -normal4
857 +normal44
858
859 $ hg log --follow --patch sub/large4
860 changeset: 6:4355d653f84f
861 user: test
862 date: Thu Jan 01 00:00:00 1970 +0000
863 summary: edit files yet again
864
865 diff -r 9d5af5072dbd -r 4355d653f84f .hglf/sub/large4
866 --- a/.hglf/sub/large4 Thu Jan 01 00:00:00 1970 +0000
867 +++ b/.hglf/sub/large4 Thu Jan 01 00:00:00 1970 +0000
868 @@ -1,1 +1,1 @@
869 -aeb2210d19f02886dde00dac279729a48471e2f9
870 +971fb41e78fea4f8e0ba5244784239371cb00591
871
872 changeset: 5:9d5af5072dbd
873 user: test
874 date: Thu Jan 01 00:00:00 1970 +0000
875 summary: edit files again
876
877 diff -r 74c02385b94c -r 9d5af5072dbd .hglf/sub/large4
878 --- a/.hglf/sub/large4 Thu Jan 01 00:00:00 1970 +0000
879 +++ b/.hglf/sub/large4 Thu Jan 01 00:00:00 1970 +0000
880 @@ -1,1 +1,1 @@
881 -eb7338044dc27f9bc59b8dd5a246b065ead7a9c4
882 +aeb2210d19f02886dde00dac279729a48471e2f9
883
884 changeset: 4:74c02385b94c
885 user: test
886 date: Thu Jan 01 00:00:00 1970 +0000
887 summary: move files
888
889 diff -r 9e8fbc4bce62 -r 74c02385b94c .hglf/sub/large4
890 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
891 +++ b/.hglf/sub/large4 Thu Jan 01 00:00:00 1970 +0000
892 @@ -0,0 +1,1 @@
893 +eb7338044dc27f9bc59b8dd5a246b065ead7a9c4
894
895 changeset: 1:ce8896473775
896 user: test
897 date: Thu Jan 01 00:00:00 1970 +0000
898 summary: edit files
899
900 diff -r 30d30fe6a5be -r ce8896473775 .hglf/sub/large2
901 --- a/.hglf/sub/large2 Thu Jan 01 00:00:00 1970 +0000
902 +++ b/.hglf/sub/large2 Thu Jan 01 00:00:00 1970 +0000
903 @@ -1,1 +1,1 @@
904 -1deebade43c8c498a3c8daddac0244dc55d1331d
905 +eb7338044dc27f9bc59b8dd5a246b065ead7a9c4
906
907 changeset: 0:30d30fe6a5be
908 user: test
909 date: Thu Jan 01 00:00:00 1970 +0000
910 summary: add files
911
912 diff -r 000000000000 -r 30d30fe6a5be .hglf/sub/large2
913 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
914 +++ b/.hglf/sub/large2 Thu Jan 01 00:00:00 1970 +0000
915 @@ -0,0 +1,1 @@
916 +1deebade43c8c498a3c8daddac0244dc55d1331d
917
727 $ cat sub/normal4
918 $ cat sub/normal4
728 normal44
919 normal44
729 $ cat sub/large4
920 $ cat sub/large4
@@ -33,8 +33,8 b' failing test'
33
33
34 $ $TESTDIR/run-tests.py --with-hg=`which hg`
34 $ $TESTDIR/run-tests.py --with-hg=`which hg`
35
35
36 --- $TESTTMP/test-failure.t
36 --- $TESTTMP/test-failure.t (glob)
37 +++ $TESTTMP/test-failure.t.err
37 +++ $TESTTMP/test-failure.t.err (glob)
38 @@ -1,4 +1,4 @@
38 @@ -1,4 +1,4 @@
39 $ echo babar
39 $ echo babar
40 - rataxes
40 - rataxes
@@ -87,8 +87,8 b' test for --retest'
87
87
88 $ $TESTDIR/run-tests.py --with-hg=`which hg` --retest
88 $ $TESTDIR/run-tests.py --with-hg=`which hg` --retest
89
89
90 --- $TESTTMP/test-failure.t
90 --- $TESTTMP/test-failure.t (glob)
91 +++ $TESTTMP/test-failure.t.err
91 +++ $TESTTMP/test-failure.t.err (glob)
92 @@ -1,4 +1,4 @@
92 @@ -1,4 +1,4 @@
93 $ echo babar
93 $ echo babar
94 - rataxes
94 - rataxes
@@ -121,8 +121,8 b' failed'
121
121
122 $ $TESTDIR/run-tests.py --with-hg=`which hg` test-failure.t
122 $ $TESTDIR/run-tests.py --with-hg=`which hg` test-failure.t
123
123
124 --- $TESTTMP/test-failure.t
124 --- $TESTTMP/test-failure.t (glob)
125 +++ $TESTTMP/test-failure.t.err
125 +++ $TESTTMP/test-failure.t.err (glob)
126 @@ -1,4 +1,4 @@
126 @@ -1,4 +1,4 @@
127 $ echo babar
127 $ echo babar
128 - rataxes
128 - rataxes
General Comments 0
You need to be logged in to leave comments. Login now