Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | Add the new option --keep-rid1 for the 'deconstruct' and 'reconstruct' commands. |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | reconstruct-sha3 |
| Files: | files | file ages | folders |
| SHA3-256: |
79b51366085191c2b7e478a0dc23bc74 |
| User & Date: | florian 2019-01-28 10:18:00.000 |
Context
|
2019-01-28
| ||
| 14:02 | Fix an oversight from the previous check-in: add the short form of the command-line option. ... (check-in: a90d0617d7 user: florian tags: reconstruct-sha3) | |
| 10:18 | Add the new option --keep-rid1 for the 'deconstruct' and 'reconstruct' commands. ... (check-in: 79b5136608 user: florian tags: reconstruct-sha3) | |
| 10:12 | Enhance the 'reconstruct' command to set the correct hash policy (SHA1 or SHA3-256) for artifacts read from disk, inferred from the length of the path name. Also enhance the 'deconstruct' and 'reconstruct' commands with an option to ensure the artifact with RID=1 is a valid manifest. See the wiki page linked to this branch for more information and tests. ... (check-in: 62a00bc728 user: florian tags: reconstruct-sha3) | |
Changes
Changes to src/rebuild.c.
| ︙ | ︙ | |||
1071 1072 1073 1074 1075 1076 1077 |
g.eHashPolicy = saved_eHashPolicy;
}
}
/*
** COMMAND: reconstruct*
**
| | > > > > > | 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 |
g.eHashPolicy = saved_eHashPolicy;
}
}
/*
** COMMAND: reconstruct*
**
** Usage: %fossil reconstruct ?OPTIONS? FILENAME DIRECTORY
**
** This command studies the artifacts (files) in DIRECTORY and
** reconstructs the fossil record from them. It places the new
** fossil repository in FILENAME. Subdirectories are read, files
** with leading '.' in the filename are ignored.
**
** Options:
** -K|--keep-rid1 Read the filename of the artifact with
** RID=1 from the file .rid in DIRECTORY.
**
** See also: deconstruct, rebuild
*/
void reconstruct_cmd(void) {
char *zPassword;
fKeepRid1 = find_option("keep-rid1",0,0)!=0;
if( g.argc!=4 ){
usage("FILENAME DIRECTORY");
}
if( file_isdir(g.argv[3], ExtFILE)!=1 ){
fossil_print("\"%s\" is not a directory\n\n", g.argv[3]);
usage("FILENAME DIRECTORY");
}
|
| ︙ | ︙ | |||
1133 1134 1135 1136 1137 1138 1139 | ** writes all artifacts to the file system. The DESTINATION directory ** will be populated with subdirectories AA and files AA/BBBBBBBBB.., where ** AABBBBBBBBB.. is the 40+ character artifact ID, AA the first 2 characters. ** If -L|--prefixlength is given, the length (default 2) of the directory ** prefix can be set to 0,1,..,9 characters. ** ** Options: | | > > | | > | 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 |
** writes all artifacts to the file system. The DESTINATION directory
** will be populated with subdirectories AA and files AA/BBBBBBBBB.., where
** AABBBBBBBBB.. is the 40+ character artifact ID, AA the first 2 characters.
** If -L|--prefixlength is given, the length (default 2) of the directory
** prefix can be set to 0,1,..,9 characters.
**
** Options:
** -R|--repository REPOSITORY Deconstruct given REPOSITORY.
** -K|--keep-rid1 Save the filename of the artifact with RID=1 to
** the file .rid1 in the DESTINATION directory.
** -L|--prefixlength N Set the length of the names of the DESTINATION
** subdirectories to N.
** --private Include private artifacts.
**
** See also: rebuild, reconstruct
*/
void deconstruct_cmd(void){
const char *zPrefixOpt;
Stmt s;
int privateFlag;
fKeepRid1 = find_option("keep-rid1","K",0)!=0;
/* get and check prefix length argument and build format string */
zPrefixOpt=find_option("prefixlength","L",1);
if( !zPrefixOpt ){
prefixLength = 2;
}else{
if( zPrefixOpt[0]>='0' && zPrefixOpt[0]<='9' && !zPrefixOpt[1] ){
prefixLength = (int)(*zPrefixOpt-'0');
|
| ︙ | ︙ |