Application: Java, SmartGit.
Расскажу о графическом приложении организации работы с содержимым Git-репозиториев.
Все годы работы с Git подыскиваю удобную программу для манипуляций ветками репозиториев, в графическом интерфейсе которой можно сделать всё. Уж насколько я сторонник автоматизаций скриптами функционала серверной составляющей, так настолько же люблю на рабочем месте наглядное отображение материала. И красивое. Корявые интерфейсы отторгают.
Под операционные системы "MS Win" и "MacOS" приятные и практичные приложения для работы с Git-репозиториями имеются, а вот в Linux с этим проблема. Раз в пару лет устраиваю инспекцию того, что заявлено как годное, и через пару-тройку дней выкорчёвываю всё это непотребство. Похоже линуксоидов-программистов где-то в закулисье наставляют - не пишите ничего неконсольного для Git, не пишите, а то не будет вам счастья.
В общем, с 2012-го остаюсь с написанным на "Java" кроссплатформенным приложением "SmartGit". Делают его немцы, вот их сайт: www.syntevo.com - а вот картинка рабочей среды:
1024x771 • Syntevo - SmartGit: пример интерфейса, от разработчиков продукта.
Для профессионального использования это стоит денег, но не сказать, чтобы шокирующих сумм - за 100 американских долларов можно купить бессрочную лицензию с годовой технической поддержкой. Для любителей пользование бесплатное, но раз в три-пять месяцев будут вынуждать обновить приложение, проводя таким образом своего рода тестирование исправлений и нового функционала (хотя версии ПО уже стабильные и риска нарваться на неприятности нет).
Как я упоминал выше, приложение "SmartGit" написано на "Java", но жёстких требований к запуску в среде "Oracle JRE/JDK" нет, и у меня уже лет пять как всё отлично работает под "OpenJDK".
Если это рабочая станция, то наверняка Java уже имеется - иначе инсталлируем открытую реализацию Java-интерпретатора:
# aptitude install openjdk-8-jre
Проверяем, откликается ли интерпретатор:
$ java -version
Распаковываем архив дистрибутива в выбранное для него место:
$ mkdir -p ~/bin
$ tar -xf ./smartgit-linux-18_1_5.tar.gz -C ~/bin/
$ tar -xf ./smartgit-linux-18_1_5.tar.gz -C ~/bin/
Запуск "SmartGit" элементарен, посредством подготовленного разработчиками скрипта:
$ ~/bin/smartgit/bin/smartgit.sh
Если приложение нормально стартует, то можно с помощью прилагаемого скрипта "add-menuitem.sh" создать в меню приложений пункт запуска такового.
Разработчиками приложения установлены довольно скромные лимиты использования ОЗУ. Для повышения производительности имеет смысл их подправить. В Linux предусмотрен вариант установки переменной окружения "SMARTGITHG_MAX_HEAP_SIZE" в нужное значение перед запуском приложения. Можно сделать это, объявив переменную в файлах вроде "~/.profile" пользователя, но проще всего запускать приложение, предварительно устанавливая значение переменной прямо в командной строке (в ярлыке, например):
$ env SMARTGITHG_MAX_HEAP_SIZE=2048m ./bin/smartgit.sh
Также для корректной работы системного монитора изменений состояния файлов репозиториев иногда требуется изменить значение лимита количества отслеживаемых, слишком маленькое по умолчанию (8192):
# vi /etc/sysctl.d/fm-smartgit.conf
fs.inotify.max_user_watches = 100000
Сразу применяем заготовленный параметр:
# sysctl -p -f /etc/sysctl.d/fm-smartgit.conf
В общем, на этом всё. Остаётся только работать с удовольствием.