Gitk не будет запускаться на Mac: неизвестное имя цвета "lime"

Я установил git на mac через brew install git. Когда я пытаюсь запустить gitk, я получаю следующую ошибку:

Error in startup script: unknown color name "lime"
    (processing "-fore" option)
    invoked from within
"$ctext tag conf m2 -fore [lindex $mergecolors 2]"
    (procedure "makewindow" line 347)
    invoked from within
"makewindow"
    (file "/usr/local/bin/gitk" line 12434)

Похоже, что у моего Mac нет цвета с именем lime.

Можно ли добавить к окружающей среде оттенок лайма, или есть лучшее исправление?

Версия git - 2.7.0, а Mac - Yosemite 10.10.5

Ответ 1

Вы можете проверить свою версию Tcl/Tk, запустив wish и используя команду info patchlevel. Похоже, что git 2.7.0, Tcl/Tk 8.5.9 и OS X 10.11 El Capitan не работают хорошо.

Я решил эту проблему, выполнив brew cask install tcl, который установил 8.6.4, и gitk теперь работает.

Ответ 2

Я также нашел ту же проблему с точно такой же версией git и OSX. В качестве временного обходного пути я предлагаю вам сделать следующее:

cp /usr/local/bin/gitk /usr/local/bin/gitk.bkp
vi /usr/local/bin/gitk

и замените все вхождения извести на любой цвет, который вы хотите (я использовал # 99FF00). Вот команда vim:

:%s/lime/"#99FF00"/g

EDIT: Пожалуйста, следуйте за ответом Keith B за постоянное исправление.

Ответ 3

@Konrad Спасибо за помощь!! Хотя ответ правильный, помните, что ваша команда

:%s/lime/"#99FF00"/g

содержит две разные кавычки, которые будут определять. если вы скопировали и вставляли ошибку.

Итак, чтобы пройти через это, я должен был сделать:

cp /usr/local/bin/gitk /usr/local/bin/gitk.bkp
vi /usr/local/bin/gitk

И внутри vim:

:%s/lime/"#99FF00"/g

Ответ 4

Если вы не хотите использовать Caskroom, выполните следующие действия:

$ brew install tcl-tk
$ brew link tcl-tk --force

Ответ 5

У меня была такая же проблема в системе ubuntu. Затем я перехожу к шагу для решения проблемы.

  • открыть файл /usr/bin/gitk в любом текстовом редакторе

  • поиск ключевого слова 'lime' в файле

  • заменить 'lime' на 'green' со всеми в файле

  • сохранить изменения файла

  • попробуйте снова gitk, тогда он работает

Ответ 6

Я запускаю MAC с Yosemetti и следую нижеуказанным шагам для разрешения.

open /usr/local/git/bin/gitk file in any text editor

search 'lime' keyword in file

replace 'lime' to 'green' with all in file

save file changes

try again gitk then it works

Спасибо @kaushal sharma, после вашего ответа, с изменением пути gitk.

Ответ 7

Полезное дополнение: замены вхождений "извести" в файле "gitk" иногда недостаточно. Вам также необходимо обработать файл ~/.config/git/gitk или удалить его.

Ответ 8

Следуйте приведенным выше инструкциям, но дополнительно выполните следующие действия:

перед запуском vi: chmod + w/usr/local/bin/gitk

после закрытия vi: chmod -w/usr/local/bin/gitk

Ответ 9

Убедитесь, что ваш путь задан правильно при попытке решения Keith B. Запуск brew doctor показал, что у меня /usr/bin до/usr/local/bin.

~ $ brew doctor
...
Consider setting your PATH so that /usr/local/bin
occurs before /usr/bin. Here is a one-liner:
  echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.bash_profile

Ответ 10

Спасибо Konrad, он работает для меня с шагом ниже

  • sudo brew обновление
  • sudo brew cask install tcl

-