LINUX.ORG.RU

Вышла EasyGG 0.1 — новая графическая оболочка для Git

 , , ,


3

1

Это простая графическая оболочка для Git, написанная на bash, с использованием технологий yad, lxterminal* и leafpad*

Она написана по принципу KISS, поэтому принципиально не предоставляет сложных и продвинутых функций. Её задача ускорить типовые операции Git: commit, add, status, pull и push.

Для более сложных функций есть кнопка «Терминал», позволяющая использовать все мыслимые и немыслимые возможности Git.

Также в комплекте предоставляется интеграция с файловыми менеджерами, позволяющая через контекстное меню вызывать основной интерфейс, делать git clone в этом каталоге и добавлять файлы в индекс git (пока поддерживается только 1 файл за раз)

Данная версия может:

  • Делать git pull, push, add --all (основной интерфейс) и git add file (через контекстное меню ФМ).
  • Делать git clone.

Установка: Запустите от обычного пользователя скрипт install_user.sh после чего в контекстном меню должны появиться команды серии «GIT GUI - *».

P.S.: Также для работы программы нужен yad и bash, используемый текстовый редактор и терминал можно поменять в исходном коде программы

>>> Подробности

★★

Проверено: atsym ()

Ответ на: комментарий от devzero

Тащем-то чтобы убедиться в моей правоте - достаточно посмотреть на большую часть опенсорсных программ, недаром над этим антипаттерном дизайна посмеялись все кому не лень в своих книжках, но ты продолжай полыхать дальше)

Deleted ()
Ответ на: комментарий от Deleted

Хотите что я поменял «git add» на «добавить файлы», а git commit на «зафиксировать»?

gtk3 ★★ ()
Ответ на: комментарий от Deleted

Лол, да ведь твой любимый KDE является вопиющим воплощением этого антипаттерна, написанный в лучших традициях последователей «на каждую опцию — по кнопочке».

посмеялись все кому не лень в своих книжках

оч. умные книжки читаешь, да. лучше бы по UI/UX чего почитал.

devzero ()
Ответ на: комментарий от gtk3

Если по уму, то смысла в отдельной gui-утилите именно для git практически нет. Взаимодействие с git должно быть на уровне вспомогательных функций либо в ide, либо в менеджере файлов (как в Dolphin, через контекстное меню)

Deleted ()
Ответ на: комментарий от devzero

лучше бы по UI/UX чего почитал

Я эти книги и имел в виду.

KDE является вопиющим воплощением этого антипаттерна

Не совсем. Хотя глупостей тут хватает.

«на каждую опцию — по кнопочке»

Ты опять ничего не понял. Лучше не пытайся, пиши код.

Deleted ()
Ответ на: комментарий от Deleted

У меня половина функций через контекстное меню fm. А в моём opentoonz'е и Ardour'е никакой интеграцией с git'ом даже не пахнет.

gtk3 ★★ ()

Человек сделал по-быстрому инструмент для себя. Даже без Electron. Да, не особо нужный широкой публике, потому что нет особой разницы, тыкнуть ли в кнопку или бахнуть команду в терминале. Выложил в общий доступ, написал установочный скрипт.

Собственно, почему бы и нет? Мало ли в девяностые/двухтысячные мелких freeware/shareware было?

Непонятно только, почему нет лицензии. Можно же выложить хоть под MIT, хоть под GPL, хоть насочинять свою EULA на 20 листов.

Bagrov ★★★★ ()
Ответ на: комментарий от gtk3

У меня половина функций через контекстное меню fm

Это правильное направление. А отдельное окошко с «push» и прочими кнопочками это бред.

Deleted ()
Ответ на: комментарий от gtk3

Там особенно нечего осиливать: один раз настроить и всё

Ещё можно поставить Oh-My-Zsh, там completion уже сделан (и много чего ещё)

anonymous ()
Ответ на: комментарий от demidrol

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

+1. Двачаю этому господину.

Odalist ★★★★★ ()
Ответ на: комментарий от gtk3

По хардкору GPL на bash-скрипт. Чтобы корпорасты не упёрли ^^

devzero ()

О боже.

$XTERM

Что это и зачем? У юзера сегодня может не быть иксов. Могут быть иксы, но:

$ echo $XTERM


lxterminal

Ну да, все же им пользуются, верно?

EXL ★★★★★ ()
Ответ на: комментарий от EXL

Есть еще такой прикол:

запустите от обычного пользователя скрипт install_user.sh после чего в контекстном меню должны появится команды серии GIT GUI - *

Не пользультесь install_root.sh, он не рабочий

devzero ()
Ответ на: комментарий от Bagrov

Человек сделал по-быстрому инструмент для себя.

Человек вызывал тремя корявым Bash-скриптами yad, привожу их ниже:

#! /bin/bash

#dir=`yad --width=400 --title="Путь к локальному git-репозиторию" --entry`

XTERM="lxterminal  --working-directory=$1 -e"

yad --form --width=250 --text="Выберите команду git клиента:" --title="Графическая оболочка для GIT" \
--field="git pull":fbtn "$XTERM 'git pull; bash'" \
--field="git push":fbtn "$XTERM 'git push; bash'" \
--field="git add":fbtn "$XTERM 'git add --all; bash'" \
--field="git commit":fbtn "$XTERM 'GIT_EDITOR=leafpad git commit; bash'" \
--field="init":fbtn "$XTERM 'git init; bash'" \
--field="status":fbtn "$XTERM 'git status; bash'" \
--field="Терминал":fbtn "$XTERM 'bash'" \
--field="gitg":fbtn "gitg" \
--field="Сравнить рабочий каталог":fbtn "$XTERM 'git diff; bash'" \
--button=Выход:1
#! /bin/bash

#dir=`yad --width=400 --title="Путь к локальному git-репозиторию" --entry`

XTERM="lxterminal  --working-directory=$1 -e"

$XTERM "git add $2; bash"
#! /bin/bash

uri=`yad --width=400 --title="Путь к удаленному git-репозиторию" --entry`

XTERM="lxterminal  --working-directory=$1 -e"

$XTERM "git clone $uri; bash"

Всё. По-твоему это достаточно для full-size новости на LOR’е? Либо это троллинг, либо каждый на этом форуме отупел.

EXL ★★★★★ ()
Ответ на: комментарий от Deleted

Эталон дизайна глазами программиста это:

http://esxi.z-lab.me:666/~exl_lab/screens/idalarge.gif
http://esxi.z-lab.me:666/~exl_lab/screens/qe_dev.gif
http://esxi.z-lab.me:666/~exl_lab/screens/win98_3.png

Пишет программы - значит, программист.

$ kdialog --title "Программист?" --msgbox "Да, я у мамки теперь программист!"
EXL ★★★★★ ()
Ответ на: комментарий от EXL

На вызове команды подстановкой из переменной меня настигло просветление. Никогда не думал, что так можно, ведь у меня всегда были function и alias.

Зато эти три скрипта однозначно эффективнее антивируса Бабушкина. И, в отличие от ReactOS, не валятся в BSOD.

Bagrov ★★★★ ()
Ответ на: комментарий от Makhno

Лучше б ты для svn запилил нормальную гуйню, интегрируемую в распространенные ФМ.

Это идея! Попробую осилить.

gtk3 ★★ ()

теперь запихай свою форму и yad --text-info в yad --paned и направляй выхлоп в text-info, вместо терминала. со свежим yad-ом можешь выхлоп даже раскрасить

ananas ★★★★★ ()
Ответ на: комментарий от Bagrov

Зато эти три скрипта однозначно эффективнее антивируса Бабушкина. И, в отличие от ReactOS, не валятся в BSOD.

В отличие от ReactOS – они вообще не работают нигде кроме системы автора. При нажатии на кнопки тупо ничего не происходит, потому что эти скрипты ожидают $XTERM, lxterminal, leafpad и прочий набор программ из LXDE.

EXL ★★★★★ ()
Ответ на: комментарий от gtk3

Только, пожалуйста, не на баше. У них есть сишное API (libsvn), и в исходниках можно найти зойчатки оберток над ним на С++.

Makhno ()

Возьмите и меня в погроммисты! У меян есть яд!

[9:13] u@notebook:~> cat /tools/xpoweroff
#!/bin/sh

[ "`id -u`" -eq "0" ] || { echo "Только суперпользователь может запускать `basename $0`. Выход." ; exit 1 ; }

xpoweroff_cmd="`which yad`" || { echo "${xpoweroff_cmd} not found. Exit." ; exit 1 ; }
xpoweroff_cmd_flags="--title XPOWEROFF --center --sticky --fixed --on-top --skip-taskbar \
--button Отмена:1 \
--button Блокировать:2 \
--button Выход:3 \
--button Выключение:4 \
--button Перезагрузка:5"
xpoweroff_message="Для продолжения выберите дальнейшее действие:"

xpoweroff_cancel="exit 0"
xpoweroff_lock="xscreensaver-command -lock"
xpoweroff_logout="fluxbox-remote exit"
xpoweroff_halt="halt -p"
xpoweroff_reboot="reboot"

# Действие пр-умолчанию
xpoweroff_default_action="${xpoweroff_cancel}"
# Время до наступления действия по-умолчанию
xpoweroff_timeout="30"

[ -z "$xpoweroff_timeout" -o "$xpoweroff_timeout" -gt "0" ] && \
xpoweroff_timeout_flags="--timeout=${xpoweroff_timeout} --timeout-indicator=top"

${xpoweroff_cmd} --text="${xpoweroff_message}" ${xpoweroff_cmd_flags} ${xpoweroff_timeout_flags}
xpoweroff_errcode="${?}"
case ${xpoweroff_errcode} in
        1)
                ${xpoweroff_cancel}
        ;;
        2)
                ${xpoweroff_lock}
        ;;
        3)
                ${xpoweroff_logout}
        ;;
        4)
                ${xpoweroff_halt}
        ;;
        5)
                ${xpoweroff_reboot}
        ;;
        *)
                exit 2
        ;;
esac

IPR ★★★★★ ()
Ответ на: комментарий от Deleted

Признавайся, что с тобой было 16 декабря прошлого года? Почему ни одного сообщения!?

IPR ★★★★★ ()

Установка
Не пользультесь install_root.sh, он не рабочий

Не, ну это ни в какие ворота не лезет! Тут же каждый второй под рутом сидит.

sT331h0rs3 ★★★★★ ()

ez gg

по теме: линукс обделили нормальным GUI для git. Мы самые умные?

anonymous ()

Запиши видео на ютаб, хочу насладиться твоим голосом.

Thetan ★★★ ()

Что-то у меня появились интересные версии, что там слева от «ь, нет изменений в рабочем каталоге».

Miguel ★★★★★ ()

О, у меня тоже есть несколько наколенных скриптов. Если я прикручу к ним гуй, можно мне тоже свою мини-новость на лоре?

Hanuken ()

Вот так, с помощью нехитрых приспособлений буханку белого (или черного) хлеба можно превратить в троллейбус… Но зачем?

MEZON ★★★★★ ()

Что может быть проще Git? Зачем для этого оболочка?

anonymous_sama ★★★★★ ()
Ответ на: комментарий от demidrol

+1, уже давно не пользуюсь emacs, но вот magit офигенная штука.

deterok ★★★★★ ()
Ответ на: комментарий от gtk3

Ardour

Нескромный вопрос: а что из файлов ардур-проектов ты собираешься хранить в гите?

XMs ★★★★★ ()

Всё, я закомител

У афтора всё представление о git на уровне «я закомител».

Если б он этим сам попользовался, то уже хотя бы убрал Init из гуя.

Не, молодец что себе что-то автоматизировал. Но пускать это на главную, да еще под заголовком «графическая оболочка для Git» - стыдно. АВИК.

anonymous ()
Ответ на: комментарий от EXL

lxterminal

Ну да, все же им пользуются, верно?

Это простая графическая оболочка для ГИТ, написанная на bash, с использованием технологий yad, lxterminal* и leafpad* - в коде можно поменять

Ну поменяй в коде, что ты как не программист /s

theNamelessOne ★★★★★ ()
Ответ на: комментарий от Bagrov

Зато эти три скрипта однозначно эффективнее антивируса Бабушкина

Так себе метрика.

theNamelessOne ★★★★★ ()
Ответ на: комментарий от anonymous

по теме: линукс обделили нормальным GUI для git

Напоминаю, что magit-у уже сто лет в обед.

theNamelessOne ★★★★★ ()
Ответ на: комментарий от anonymous_sama

Что может быть проще Git? Зачем для этого оболочка?

Interactive staging и interactive rebase делать из консольки неудобно. А как ты делаешь гранулярные коммиты и переписываешь историю?

theNamelessOne ★★★★★ ()

После SourceTree / GitTower смотрю на это всё, и думаю: какое дерьмище.

menangen ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.