static int Main(string[] args) { var options = new Options(); if (Parser.Default.ParseArguments(args, options)) { DeleteTempFolder(options); var svnLook = new SvnLook(options.SvnLookPath); if (!CheckComment(svnLook, options)) { Console.Error.WriteLine("Please put a comment that describes changes you made in the code"); return((int)ReturnCode.EmptyComment); } SaveCommittedFilesToTemp(svnLook, options); ValidateFiles(options, options.TempFolder); if (Violations.Count > 0) { Console.Error.WriteLine("There are StyleCop violations in your code"); foreach (var violation in Violations) { Console.Error.WriteLine(violation); } return((int)ReturnCode.ViolationsFound); } return((int)ReturnCode.Ok); } Console.Error.WriteLine(options.LastParserState.Errors.First().BadOption.LongName); return((int)ReturnCode.WrongParameters); }
private static void SaveCommittedFilesToTemp(SvnLook svnLook, Options options) { var files = svnLook.GetChangedFiles(options.Repository, options.Transaction); foreach (string file in files) { string outFileName = Path.Combine(options.TempFolder, file); Directory.CreateDirectory(Path.GetDirectoryName(outFileName)); svnLook.DownloadFile(options.Repository, options.Transaction, file, outFileName); } }
private static bool CheckComment(SvnLook svnLook, Options options) { var comment = svnLook.GetCommitComment(options.Repository, options.Transaction); return(!String.IsNullOrWhiteSpace(comment) || options.AllowEmptyComment); }