Add --keep-history option
This commit is contained in:
parent
2426da08de
commit
3536d47f5d
16
wp2git.d
16
wp2git.d
|
@ -15,9 +15,10 @@ import ae.utils.xmllite;
|
||||||
int main(string[] args)
|
int main(string[] args)
|
||||||
{
|
{
|
||||||
string language="en";
|
string language="en";
|
||||||
bool usage, noImport;
|
bool usage, noImport, keepHistory;
|
||||||
getopt(args,
|
getopt(args,
|
||||||
"h|help", &usage,
|
"h|help", &usage,
|
||||||
|
"keep-history", &keepHistory,
|
||||||
"no-import", &noImport,
|
"no-import", &noImport,
|
||||||
"language", &language,
|
"language", &language,
|
||||||
);
|
);
|
||||||
|
@ -28,20 +29,23 @@ int main(string[] args)
|
||||||
stderr.writefln("Usage: %s Article_name [OPTION]...", args[0]);
|
stderr.writefln("Usage: %s Article_name [OPTION]...", args[0]);
|
||||||
stderr.writefln("Create a git repository with the history of the specified Wikipedia article.");
|
stderr.writefln("Create a git repository with the history of the specified Wikipedia article.");
|
||||||
stderr.writefln("Supported options:");
|
stderr.writefln("Supported options:");
|
||||||
stderr.writefln(" -h --help Display this help");
|
stderr.writefln(" -h --help Display this help");
|
||||||
stderr.writefln(" --no-import Don't invoke ``git fast-import'' and only generate the fast-import data");
|
stderr.writefln(" --keep-history Don't delete history.xml");
|
||||||
stderr.writefln(" --language LANG Specify the Wikipedia language subdomain (default: en)");
|
stderr.writefln(" --no-import Don't invoke ``git fast-import'' and only");
|
||||||
|
stderr.writefln(" generate the fast-import data");
|
||||||
|
stderr.writefln(" --language LANG Specify the Wikipedia language subdomain (default: en)");
|
||||||
return 2;
|
return 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
enforce(args.length==2, "No article specified");
|
enforce(args.length==2, "No article specified");
|
||||||
auto name = args[1];
|
auto name = args[1];
|
||||||
|
|
||||||
enforce(spawnvp(P_WAIT, "curl", ["curl", "-d", "\"\"", "http://" ~ language ~ ".wikipedia.org/w/index.php?title=Special:Export&pages=" ~ encodeComponent(name), "-o", "history.xml"])==0, "curl error");
|
if (!exists("history.xml"))
|
||||||
|
enforce(spawnvp(P_WAIT, "curl", ["curl", "-d", "\"\"", "http://" ~ language ~ ".wikipedia.org/w/index.php?title=Special:Export&pages=" ~ encodeComponent(name), "-o", "history.xml"])==0, "curl error");
|
||||||
|
|
||||||
stderr.writefln("Loading history...");
|
stderr.writefln("Loading history...");
|
||||||
string xmldata = cast(string) read("history.xml");
|
string xmldata = cast(string) read("history.xml");
|
||||||
std.file.remove("history.xml");
|
if (!keepHistory) std.file.remove("history.xml");
|
||||||
auto xml = new XmlDocument(xmldata);
|
auto xml = new XmlDocument(xmldata);
|
||||||
|
|
||||||
string data = "reset refs/heads/master\n";
|
string data = "reset refs/heads/master\n";
|
||||||
|
|
Loading…
Reference in New Issue