Есть ли индикатор git, чтобы получать уведомления о коммите, тянуть?

Есть ли индикатор для просмотра репозитория git и получения уведомлений о коммите, push, ...?

При поиске «индикатора репозитория ubuntu git watch» пришло много индикаторов, размещенных на github ... не могу найти ничего полезного для этого ...

7
задан 19 July 2013 в 17:33

2 ответа

Я написал небольшую программу на Python, которая делает то, что вы ищете. Это немного грубо по краям, поэтому я буду признателен за любые ваши отзывы.

Ubuntu Git индикатор

Чтобы использовать его, запустите Git-индикатор из каталога, который содержит одно или несколько Git-репозиториев (как вы бы использовали Git-Dude).

Пример:

~$ git clone https://github.com/itsadok/git-indicator.git ~/.git-indicator
~$ cd ~/repos
~/repos$ ls
repo1 repo2 repo3
~/repos$ ~/.git-indicator/git-indicator.py &
0
ответ дан 19 July 2013 в 17:33

Я думаю, что Вы хотите, мерзавец-чувак.

мерзавец-чувак

https://github.com/sickill/git-dude

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

Как это работает

Это просто использует git fetch и анализирует его вывод для наблюдения то, что изменилось. Затем это форматирует новые сообщения о фиксации с git log и выставочное настольное уведомление с notify-send / kdialog (Linux) или growlnotify (OSX). Все это в бесконечном цикле.

Как это смотрит

Fedora (Shell Gnome):

git-dude on Fedora

Ubuntu:

git-dude on Ubuntu

Требования

На Linux:

  • notify-send на Gnome (Fedora: пакет libnotify, Ubuntu: пакет libnotify-мусорного-ведра)
  • kdialog на KDE (включенный в KDE)

На OSX:

Установка

$ curl -skL https://github.com/sickill/git-dude/raw/master/git-dude >~/bin/git-dude
$ chmod +x ~/bin/git-dude

* Удостоверяются ~/bin находится в Вашем $PATH или помещенный git-dude сценарий где-то в другом месте на Вашем $PATH.

Использование

мерзавец-чувак выполняет итерации по репозиториям, которые живут в каталоге чувака. Этот каталог является не чем иным как контейнером для клонированных репозиториев проектов, которые Вы хотите смотреть. Назовите это как Вы хочет, здесь например, мы используем ~/.git-dude:

$ mkdir ~/.git-dude
$ cd ~/.git-dude

Клонируйте некоторые репозитории:

$ git clone --mirror https://github.com/joelthelion/autojump.git
$ git clone --mirror git://github.com/pyromaniac/hoof.git

Я рекомендую git clone --mirror - это не делает контроля рабочий каталог, таким образом, это сохраняет некоторое дисковое пространство для больших проектов.

Репозитории Symlinked работают также. Таким образом, уже можно контролировать клонированные проекты:

$ ln -s ~/code/tmuxinator .

Теперь выполните это для контроля pwd:

$ git dude

Можно также передать имя каталога как первый аргумент для определения который каталог контролировать вместо pwd.

$ git dude ~/watched-repos

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

Конфигурация

Глобальный

Набор, как часто мерзавец-чувак должен проверить на изменения (в секундах, значении по умолчанию: 60):

$ git config --global dude.interval 30

Установите путь к значку, используемому настольными уведомлениями (значение по умолчанию: ни один):

$ git config --global dude.icon ~/.git-dude/github_32.png

Установите пользовательскую команду уведомления ($TITLE, $DESCRIPTION и $ICON_PATH переменные среды установлены при вызове команды уведомления):

$ git config --global dude.notify-command 'gntp-send "$TITLE" "$DESCRIPTION" "$ICON_PATH"'
$ git config --global dude.notify-command 'echo -e "$TITLE\n\n\n$DESCRIPTION" | espeak --stdin -k20 -ven+12'

На репозиторий

Установите путь к значку, используемому настольными уведомлениями для этого репозитория (значение по умолчанию: взятый от глобальной установки):

$ git config dude.icon ~/.git-dude/dm-core/datamapper.png

Скажите мерзавцу-чуваку игнорировать определенный репозиторий (если Вы хотите не контролировать его):

$ git config dude.ignore true

Автор

Marcin Kulik (http://ku1ik.com/ | @sickill)


Для отслеживания уведомлений используют индикатор Recent Notifications.

screenshot recent notifications

В выполненном терминале:

sudo add-apt-repository ppa:jconti/recent-notifications
sudo apt-get update
sudo apt-get install indicator-notifications

После установки выполненного Alt+F2 unity --replace.

Вы найдете немного почтового ящика в панели:recent notifications in panel]

8
ответ дан 19 July 2013 в 17:33

Другие вопросы по тегам:

Похожие вопросы: