Можете ли вы запросить Subversion, чтобы найти все проверки конкретного автора в нерабочее время - PullRequest
4 голосов
/ 16 декабря 2010

Я хотел бы выполнить запрос на Subversion, чтобы найти все проверки, выполненные конкретным пользователем вне рабочего времени (с 9:00 до 17:00). Есть ли способ сделать это?

Ответы [ 3 ]

4 голосов
/ 16 декабря 2010

Вы можете получить историю subversion als xml из командной строки:

svn log <url> --xml

Затем вы можете написать сценарий для анализа выходных данных и применить критерии поиска ...

2 голосов
/ 16 декабря 2010

Вы можете указать это и указать час за раз

 svn log | sed -n '/ XX:/,/-----$/ p'

Заменить XX на нужный вам час.22.

Редактировать: Чтобы вывести все часы, которые вы хотите, вы можете сделать скрипт, который запускает эту команду для каждого часа, и поместить его в файл журнала.

 #!/bin/sh
 svn log | sed -n '/ 19:/,/-----$/ p' >> svn.log
 svn log | sed -n '/ 20:/,/-----$/ p' >> svn.log
 svn log | sed -n '/ 21:/,/-----$/ p' >> svn.log
 svn log | sed -n '/ 22:/,/-----$/ p' >> svn.log
 ...
1 голос
/ 21 декабря 2010

Я воспользовался советом ChrisK и создал файл XML, используя следующий синтаксис ...

svn log <url> --xml <path>

А затем использовал следующий запрос в операторах LinqPad C #, чтобы идентифицировать все проверки вне часов ....

var xml = XElement.Load (@"c:\\work\\log.xml");

var query =
  from logEntry in xml.Elements()
  from myDate in logEntry.Elements()
  //from author in logEntry.Elements() //These lines get a specific author
  //where author.Value == "digiguru"
  //where author.Name == "author"
  where myDate.Name == "date"
  where !(DateTime.Parse(myDate.Value).Hour >= 9 && DateTime.Parse(myDate.Value).Hour <= 17)
  select logEntry;

query.Dump();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...