2011-10-09 5 views
1

Я вижу текст на основе графика, выполняющий команду: git log --graph --source.Анализ цвета из git log

Есть ли способ форматирования вывода, чтобы я мог анализировать цвет ветки на какой-либо конкретной линии? Я играл с --pretty-format, но не могу ни с чем с ним справиться.

Так, например, если текущая ветка красного цвета, у нее будет какой-то идентификатор вместе с ним, чтобы сказать мне, что это красная линия.

Редактировать: Я также использую Node.js. Он не способен отображать несколько цветовых кодов ANSI в одной строке.

Редактировать: Цель этой задачи - восстановить исходный вывод консоли в моем собственном приложении и отобразить ее через HTML. Я нашел альтернативное решение для этой задачи в своем ответе.

+0

Что вы на самом деле пытаетесь сделать? Возможно, лучший способ. – Cascabel

+0

Я пытаюсь вывести текстовый граф, сгенерированный git, и сделать свое собственное представление об этом. –

ответ

1

Я нашел небольшой скрипт, который выполняет задание, о котором я просил.

gitgraph.js: http://bluef.github.com/gitgraph.js/

новообращенный журнала мерзавец --graph к изображению с помощью HTML5 холст

+0

Не совсем уверен, но похоже, что это не анализирует цвета, просто назначает их произвольно. Это именно то, что я сказал. –

0

Я считаю, что цвета только что назначены произвольно. Каждый раз, когда есть точка слияния, две (или более) цветные линии объединяются, образуя другую цветную линию. Так что, учитывая, что вы вообще заботитесь о цвете?

Если вы пытаетесь использовать цвет для воссоздания вывода в другом формате, и вы не хотите реализовывать свою собственную процедуру кодирования цвета, вы можете нажать --color=always, а затем разобрать ANSI color codes с выхода ,

+0

Спасибо за предложение. Я забыл упомянуть, что разбираю его с помощью Node.js, который не поддерживает коды цветов ANSI напрямую. –

+1

@StanislavPalatnik: Что значит «не поддерживает цветовые коды ANSI напрямую»? Node.js - это язык. Я понятия не имею, что вы можете иметь в виду, когда говорите о поддержке цветовых кодов ANSI. Если вы не выходите на терминал, _nothing_ «поддерживает» цветовые коды ANSI. Но они всего лишь последовательности символов, и вы можете их разобрать, как хотите. –

+0

Я признаю, что это было неоднозначно, но ваша напыщенная речь тоже не нужна. Да, я выводю на терминал, а вывод цветовых кодов ANSI на терминал через Node.js не поддерживается. Ты понятия не имеешь? Вы, кажется, догадались о концепции довольно хорошо. –