Как выбрать все коммиты для данного пользователя в EyeQL?
В Crucible я использую расширенный поиск.
Я пытаюсь выбрать все коммиты для указанного пользователя, которые не были просмотрены.
Следующий запрос:
select revisions
from dir /
where
(on branch master
or on branch release-10
)
and not reviewed
and date >= 2014-09-23
group by csid
return csid,author,comment,date
работает нормально, но если я попытаюсь добавить предложение where для автора, это не сработает.
Автор выглядит как "Первый последний" (например, "Джон Смит").
Я пытался использовать (раньше and not reviewed
):
and author=First Last
and author='First Last'
and author="First Last"
and author in (First Last)
and author in ('First Last')
and author in ("First Last")
но есть некоторые проблемы:
Случай 1:
Search error: error parsing query: unexpected token: Last
дело 4:
Search error: error parsing query: expecting RPAREN, found 'Last'
или это не возвращает результат (случай: 2, 3, 5, 6).
Я уверен, что "First Last" существует, потому что его можно найти с помощью запроса выше.
Как я могу создать запрос?
2 ответа
Я нашел решение:
and author = "first last <first.last@domainName.domain>"
Даже если автор выглядит как "Первый последний" в столбце "Автор", у него также есть электронное письмо, которое появляется при наведении мыши.
Как вы узнали, вы должны искать полную строку отображаемого имени и адреса электронной почты. Для построения этого критерия выбора полезен следующий трюк:
- Перейти к стандартному поиску. Он отображает список выбора авторов из репо. Один и тот же автор (адрес электронной почты) может появляться несколько раз, если он использовал варианты в отображаемом имени ("Первый последний" против "Последний, первый" и т. Д.). Выберите любого автора, который вас интересует (список многократный) и нажмите "Поиск".
- После того, как результаты были отображены, переключитесь на EyeQL Search. Вы найдете правильный критерий выбора для выбранного автора (ов). Теперь вы можете расширить запрос, чтобы удовлетворить ваши дополнительные потребности.