Можно ли раскрасить вывод журнала hg в зависимости от содержимого?
Можно ли раскрасить каждую строку вывода журнала hg в зависимости от содержимого и / или описания отдельной ревизии? Например, я хотел бы помочь "настоящей" работе выделиться, выделив строки для слияний и строки для изменений, которые касаются только ресурсов тестирования (без файлов на языке программирования.)
Основываясь на привычках наших команд, я мог получить примерно то, что хотел, если бы в словах я нашел слова "базовая линия" и "слияние", но шаблоны файлов и каталоги (для базовых линий) и топология (для слияний) были бы более точными.
Есть ли способ настроить hg для форматирования каждой строки по-разному?
1 ответ
Я не думаю, что можно раскрасить только на основе содержимого, но вы могли бы использовать ревизии Mercurial (hg help revset
) для отображения только соответствующих наборов изменений.
Что-то вроде: hg log -r "not desc('merge') and not file('test/*')"
должен вывести вас на правильный путь.
Вот некоторые детали, как это работает:
desc('merge')
выберет наборы изменений, содержащие слияние в их описании.not desc('merge')
отфильтровывает такие наборы изменений.file('test/*')
выберет наборы изменений касаясь файлов в каталоге тестов.not file('test/*')
отфильтровывает такие наборы изменений.
Большая проблема с этим решением состоит в том, что оно отфильтровывает наборы изменений, затрагивающие файлы как в тестовом каталоге, так и где-то еще, я не уверен, что для этого есть специальный revset.