public CmdReqGitLog(string GitRepPath, ICmdReader reader = null) : base(reader ?? new CmdReadString(), GitRepPath) { AddArgumentGitRepPath(); AddArgument("log"); AddArgument("--oneline"); AddArgument("--no-abbrev-commit"); }
public CmdBuilderGIT(ICmdReader reader, string gitRepPath = null) : base(reader) { ProcessFileName = DefaultGitExePath; _Settings = NinjectCore.Get <ISettings>(); GitRepPath = (gitRepPath == null) ? _Settings.GitRepositoryPath : gitRepPath; }
public CmdReqGitShowCommit(string sha, bool shortstat, ICmdReader reader) : base(reader) { AddArgumentGitRepPath(); AddArgument("show"); AddArgument("--date=iso"); if (shortstat) { AddArgument("--shortstat"); } AddArgument(sha); }
private ICmdReader GetReader(ICmdReader reader, Type T) { if (reader == null) { if (T == typeof(string)) { reader = new CmdReadString(); } else if (T == typeof(List <string>)) { reader = new CmdReadListString(); } else if (T == typeof(bool)) { reader = new CmdReadBool(); } else { throw new Exception($"Отсутствует Reader для типа {T.Name}"); } } return(reader); }
public CmdReqGitDiff(IDbObjectText dbObj, ICmdReader reader = null) : base(reader ?? new CmdReadDiffText()) { _dbObj = dbObj; }
protected CmdCore(ICmdReader reader) { OperationName = this.GetType().Name; Reader = reader; }
public CmdReqGitBlame(string fileName, int beginLine, int endline, bool ShowEmail, ICmdReader reader) : base(reader) { AddArgumentGitRepPath(); AddArgument("blame"); AddArgument("-w"); AddArgument("-l"); AddArgument($" -L {beginLine},{endline}"); if (ShowEmail) { AddArgument("--show-email"); } AddArgument($"{fileName}"); }
/// <summary> /// Вернуть результат операции git blame для заданного файла, для заданных строк /// </summary> /// <param name="FileName"></param> /// <param name="beginLine"></param> /// <param name="endline"></param> /// <param name="ShowEmail">Вместо автора отображать email</param> /// <returns></returns> public T GitBlame <T>(string FileName, int beginLine, int endline = -1, bool ShowEmail = false, ICmdReader CustomReader = null) { return(PerformProcess <T>(new CmdReqGitBlame(FileName, beginLine, endline, ShowEmail, GetReader(CustomReader, typeof(T))))); }
/// <summary> /// Получить информацию по коммиту /// </summary> /// <typeparam name="T"></typeparam> /// <param name="sha"></param> /// <param name="shortstat"></param> /// <param name="reader"></param> /// <returns></returns> public T GitShow <T>(string sha, bool shortstat, ICmdReader reader = null) { return(PerformProcess <T>(new CmdReqGitShowCommit(sha, shortstat, GetReader(reader, typeof(T))))); }