##// END OF EJS Templates
changing-files: add a debug command display changed files...
marmoute -
r46239:f74c370c default draft
parent child Browse files
Show More
@@ -59,6 +59,7 b' from . import ('
59 59 lock as lockmod,
60 60 logcmdutil,
61 61 mergestate as mergestatemod,
62 metadata,
62 63 obsolete,
63 64 obsutil,
64 65 pathutil,
@@ -99,6 +100,7 b' from .utils import ('
99 100 from .revlogutils import (
100 101 deltas as deltautil,
101 102 nodemap,
103 sidedata,
102 104 )
103 105
104 106 release = lockmod.release
@@ -478,6 +480,40 b' def debugcapabilities(ui, path, **opts):'
478 480 ui.write(b' %s\n' % v)
479 481
480 482
483 @command(b'debugchangedfiles', [], b'REV')
484 def debugchangedfiles(ui, repo, rev):
485 """list the stored files changes for a revision"""
486 ctx = scmutil.revsingle(repo, rev, None)
487 sd = repo.changelog.sidedata(ctx.rev())
488 files_block = sd.get(sidedata.SD_FILES)
489 if files_block is not None:
490 files = metadata.decode_files_sidedata(sd)
491 for f in sorted(files.touched):
492 if f in files.added:
493 action = b"added"
494 elif f in files.removed:
495 action = b"removed"
496 elif f in files.merged:
497 action = b"merged"
498 elif f in files.salvaged:
499 action = b"salvaged"
500 else:
501 action = b"touched"
502
503 copy_parent = b""
504 copy_source = b""
505 if f in files.copied_from_p1:
506 copy_parent = b"p1"
507 copy_source = files.copied_from_p1[f]
508 elif f in files.copied_from_p2:
509 copy_parent = b"p2"
510 copy_source = files.copied_from_p2[f]
511
512 data = (action, copy_parent, f, copy_source)
513 template = b"%-8s %2s: %s, %s;\n"
514 ui.write(template % data)
515
516
481 517 @command(b'debugcheckstate', [], b'')
482 518 def debugcheckstate(ui, repo):
483 519 """validate the correctness of the current dirstate"""
@@ -80,6 +80,7 b' Show debug commands if there are no othe'
80 80 debugbuilddag
81 81 debugbundle
82 82 debugcapabilities
83 debugchangedfiles
83 84 debugcheckstate
84 85 debugcolor
85 86 debugcommands
@@ -268,6 +269,7 b' Show all commands + options'
268 269 debugbuilddag: mergeable-file, overwritten-file, new-file
269 270 debugbundle: all, part-type, spec
270 271 debugcapabilities:
272 debugchangedfiles:
271 273 debugcheckstate:
272 274 debugcolor: style
273 275 debugcommands:
@@ -1018,51 +1018,71 b' We upgrade a repository that is not usin'
1018 1018 $ for rev in `hg log --rev 'all()' -T '{rev}\n'`; do
1019 1019 > echo "##### revision $rev #####"
1020 1020 > hg debugsidedata -c -v -- $rev
1021 > hg debugchangedfiles $rev
1021 1022 > done
1022 1023 ##### revision 0 #####
1023 1024 1 sidedata entries
1024 1025 entry-0014 size 34
1025 1026 '\x00\x00\x00\x03\x04\x00\x00\x00\x01\x00\x00\x00\x00\x04\x00\x00\x00\x02\x00\x00\x00\x00\x04\x00\x00\x00\x03\x00\x00\x00\x00abh'
1027 added : a, ;
1028 added : b, ;
1029 added : h, ;
1026 1030 ##### revision 1 #####
1027 1031 1 sidedata entries
1028 1032 entry-0014 size 24
1029 1033 '\x00\x00\x00\x02\x0c\x00\x00\x00\x01\x00\x00\x00\x00\x06\x00\x00\x00\x02\x00\x00\x00\x00ac'
1034 removed : a, ;
1035 added p1: c, a;
1030 1036 ##### revision 2 #####
1031 1037 1 sidedata entries
1032 1038 entry-0014 size 24
1033 1039 '\x00\x00\x00\x02\x0c\x00\x00\x00\x01\x00\x00\x00\x00\x06\x00\x00\x00\x02\x00\x00\x00\x00cd'
1040 removed : c, ;
1041 added p1: d, c;
1034 1042 ##### revision 3 #####
1035 1043 1 sidedata entries
1036 1044 entry-0014 size 24
1037 1045 '\x00\x00\x00\x02\x0c\x00\x00\x00\x01\x00\x00\x00\x00\x06\x00\x00\x00\x02\x00\x00\x00\x00de'
1046 removed : d, ;
1047 added p1: e, d;
1038 1048 ##### revision 4 #####
1039 1049 1 sidedata entries
1040 1050 entry-0014 size 24
1041 1051 '\x00\x00\x00\x02\x0c\x00\x00\x00\x01\x00\x00\x00\x00\x06\x00\x00\x00\x02\x00\x00\x00\x00ef'
1052 removed : e, ;
1053 added p1: f, e;
1042 1054 ##### revision 5 #####
1043 1055 1 sidedata entries
1044 1056 entry-0014 size 14
1045 1057 '\x00\x00\x00\x01\x14\x00\x00\x00\x01\x00\x00\x00\x00b'
1058 touched : b, ;
1046 1059 ##### revision 6 #####
1047 1060 1 sidedata entries
1048 1061 entry-0014 size 14
1049 1062 '\x00\x00\x00\x01\x0c\x00\x00\x00\x01\x00\x00\x00\x00d'
1063 removed : d, ;
1050 1064 ##### revision 7 #####
1051 1065 1 sidedata entries
1052 1066 entry-0014 size 14
1053 1067 '\x00\x00\x00\x01\x0c\x00\x00\x00\x01\x00\x00\x00\x00d'
1068 removed : d, ;
1054 1069 ##### revision 8 #####
1055 1070 1 sidedata entries
1056 1071 entry-0014 size 14
1057 1072 '\x00\x00\x00\x01\x04\x00\x00\x00\x01\x00\x00\x00\x00d'
1073 added : d, ;
1058 1074 ##### revision 9 #####
1059 1075 1 sidedata entries
1060 1076 entry-0014 size 24
1061 1077 '\x00\x00\x00\x02\x0c\x00\x00\x00\x01\x00\x00\x00\x00\x06\x00\x00\x00\x02\x00\x00\x00\x00bg'
1078 removed : b, ;
1079 added p1: g, b;
1062 1080 ##### revision 10 #####
1063 1081 1 sidedata entries
1064 1082 entry-0014 size 24
1065 1083 '\x00\x00\x00\x02\x06\x00\x00\x00\x01\x00\x00\x00\x01\x0c\x00\x00\x00\x02\x00\x00\x00\x00fg'
1084 added p1: f, g;
1085 removed : g, ;
1066 1086 ##### revision 11 #####
1067 1087 1 sidedata entries
1068 1088 entry-0014 size 4
@@ -1079,6 +1099,7 b' We upgrade a repository that is not usin'
1079 1099 1 sidedata entries
1080 1100 entry-0014 size 14
1081 1101 '\x00\x00\x00\x01\x04\x00\x00\x00\x01\x00\x00\x00\x00d'
1102 added : d, ;
1082 1103 ##### revision 15 #####
1083 1104 1 sidedata entries
1084 1105 entry-0014 size 4
@@ -1087,6 +1108,7 b' We upgrade a repository that is not usin'
1087 1108 1 sidedata entries
1088 1109 entry-0014 size 14
1089 1110 '\x00\x00\x00\x01\x04\x00\x00\x00\x01\x00\x00\x00\x00d'
1111 added : d, ;
1090 1112 ##### revision 17 #####
1091 1113 1 sidedata entries
1092 1114 entry-0014 size 4
@@ -1099,18 +1121,24 b' We upgrade a repository that is not usin'
1099 1121 1 sidedata entries
1100 1122 entry-0014 size 14
1101 1123 '\x00\x00\x00\x01\x08\x00\x00\x00\x01\x00\x00\x00\x00f'
1124 merged : f, ;
1102 1125 ##### revision 20 #####
1103 1126 1 sidedata entries
1104 1127 entry-0014 size 14
1105 1128 '\x00\x00\x00\x01\x08\x00\x00\x00\x01\x00\x00\x00\x00f'
1129 merged : f, ;
1106 1130 ##### revision 21 #####
1107 1131 1 sidedata entries
1108 1132 entry-0014 size 24
1109 1133 '\x00\x00\x00\x02\x0c\x00\x00\x00\x01\x00\x00\x00\x00\x06\x00\x00\x00\x02\x00\x00\x00\x00hi'
1134 removed : h, ;
1135 added p1: i, h;
1110 1136 ##### revision 22 #####
1111 1137 1 sidedata entries
1112 1138 entry-0014 size 24
1113 1139 '\x00\x00\x00\x02\x16\x00\x00\x00\x01\x00\x00\x00\x01\x0c\x00\x00\x00\x02\x00\x00\x00\x00di'
1140 touched p1: d, i;
1141 removed : i, ;
1114 1142 ##### revision 23 #####
1115 1143 1 sidedata entries
1116 1144 entry-0014 size 4
@@ -1123,22 +1151,27 b' We upgrade a repository that is not usin'
1123 1151 1 sidedata entries
1124 1152 entry-0014 size 14
1125 1153 '\x00\x00\x00\x01\x14\x00\x00\x00\x01\x00\x00\x00\x00d'
1154 touched : d, ;
1126 1155 ##### revision 26 #####
1127 1156 1 sidedata entries
1128 1157 entry-0014 size 14
1129 1158 '\x00\x00\x00\x01\x08\x00\x00\x00\x01\x00\x00\x00\x00d'
1159 merged : d, ;
1130 1160 ##### revision 27 #####
1131 1161 1 sidedata entries
1132 1162 entry-0014 size 14
1133 1163 '\x00\x00\x00\x01\x08\x00\x00\x00\x01\x00\x00\x00\x00d'
1164 merged : d, ;
1134 1165 ##### revision 28 #####
1135 1166 1 sidedata entries
1136 1167 entry-0014 size 14
1137 1168 '\x00\x00\x00\x01\x08\x00\x00\x00\x01\x00\x00\x00\x00d'
1169 merged : d, ;
1138 1170 ##### revision 29 #####
1139 1171 1 sidedata entries
1140 1172 entry-0014 size 14
1141 1173 '\x00\x00\x00\x01\x08\x00\x00\x00\x01\x00\x00\x00\x00d'
1174 merged : d, ;
1142 1175 ##### revision 30 #####
1143 1176 1 sidedata entries
1144 1177 entry-0014 size 4
@@ -983,6 +983,8 b' Test list of internal help commands'
983 983 debugbundle lists the contents of a bundle
984 984 debugcapabilities
985 985 lists the capabilities of a remote peer
986 debugchangedfiles
987 list the stored files changes for a revision
986 988 debugcheckstate
987 989 validate the correctness of the current dirstate
988 990 debugcolor show available color, effects or style
General Comments 0
You need to be logged in to leave comments. Login now