Добавлена проверка на наличие установленного git в системе
This commit is contained in:
parent
a7676d5886
commit
517175a86e
2 changed files with 12 additions and 0 deletions
|
@ -1,6 +1,7 @@
|
||||||
import snag;
|
import snag;
|
||||||
import commandr;
|
import commandr;
|
||||||
import std.file;
|
import std.file;
|
||||||
|
import std.stdio : writeln;
|
||||||
|
|
||||||
import core.stdc.stdlib : EXIT_SUCCESS, EXIT_FAILURE;
|
import core.stdc.stdlib : EXIT_SUCCESS, EXIT_FAILURE;
|
||||||
|
|
||||||
|
@ -8,6 +9,11 @@ private string programName = "snag";
|
||||||
|
|
||||||
int main(string[] args)
|
int main(string[] args)
|
||||||
{
|
{
|
||||||
|
if (!checkGit()) {
|
||||||
|
"Using snag requires Git to be installed".writeln;
|
||||||
|
return EXIT_FAILURE;
|
||||||
|
}
|
||||||
|
|
||||||
auto argumets = new Program(programName, snagVersion)
|
auto argumets = new Program(programName, snagVersion)
|
||||||
.add(new Command("init", "Initializing the repository for storing snapshots"))
|
.add(new Command("init", "Initializing the repository for storing snapshots"))
|
||||||
.add(new Command("status", "Checking the status of tracked files"))
|
.add(new Command("status", "Checking the status of tracked files"))
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
module snag.lib.lib;
|
module snag.lib.lib;
|
||||||
|
|
||||||
import std.regex;
|
import std.regex;
|
||||||
|
import std.process;
|
||||||
|
|
||||||
bool isValidHash(string hash) {
|
bool isValidHash(string hash) {
|
||||||
auto hashPattern = ctRegex!r"^[a-fA-F0-9]{7}$";
|
auto hashPattern = ctRegex!r"^[a-fA-F0-9]{7}$";
|
||||||
|
@ -11,3 +12,8 @@ bool isValidEmail(string email) {
|
||||||
auto emailPattern = ctRegex!r"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$";
|
auto emailPattern = ctRegex!r"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$";
|
||||||
return !matchFirst(email, emailPattern).empty;
|
return !matchFirst(email, emailPattern).empty;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool checkGit() {
|
||||||
|
auto result = execute(["which", "git"]);
|
||||||
|
return !result.status;
|
||||||
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue