Git Cola - это мощный GIT GUI с гладким и интуитивно понятным пользовательским интерфейсом.
git clone https://github.com/git-cola/git-cola.git

Скриншоты
Загрузки
Комплект клавиш
HTML документация
Git cola документация
Git dag документация
Внесение руководящих принципов
Git 2.2.0 или новее.
Python 3.6 или новее.
Qtpy 2.0.0 или более новее.
Git Cola использует QTPY, поэтому вы можете выбрать между PYQT6, PYQT5 и Pyside2, установив переменную среды QT_API на pyqt6 , pyqt5 или pyside2 по желанию. qtpy по умолчанию в pyqt5 и возвращается в pyqt6 и pyside2 , если pyqt5 не установлен.
Любая из следующих библиотек Python QT должна быть установлена:
Pyqt5 / pyqt6 5.9 или более новый. QT 6.2 или более новое также поддерживается через QTPY.
Pyside2 5.12.0 или новее.
Git Cola обеспечивает дополнительные функции при установке следующих модулей Python.
Send2trash включает в себя кроссплатформенную функциональность «Отправить в мусор». (источник)
notify2 включает доставку уведомлений на рабочем столе. (источник)
PYOBJC включает специфичные для MacOS темы применения на macOS. (источник)
Есть несколько способов установить Git Cola, но вам не нужно «установить» Git Cola, чтобы запустить ее.
Git Cola предназначена для того, чтобы работать непосредственно из своего исходного дерева. Установка необязательна.
Рекомендуемый подход для запуска новейшей версии Git Cola заключается в установлении своих зависимостей PYQT с использованием менеджера пакетов вашего дистрибуции, а затем запустить ./bin/git-cola непосредственно из источника.
Git Cola работает с PYQT5 или PYQT6, потому что она использует библиотеку QTPY для совместимости PYQT.
Пользователи в новой версии Debian/Ubuntu могут установить один пакет для запуска из Source.
sudo apt install python3-qtpy Если вы находитесь на более старой версии, в которой нет доступна python3-qtpy , вы можете установить следующие пакеты напрямую.
sudo apt install python3-pyqt5 python3-pyqt5.qtopengl python3-pyqt5.qtwebengine python3-pyqt5.qtsvgЕсли вы хотите использовать Git Cola с более новой экосистемой PYQT6, вы можете установить эти пакеты вместо PYQT5.
sudo apt install python3-pyqt6 python3-pyqt6.qtsvg python3-pyqt6.qtwebengine На этом этапе вы должны быть в состоянии запустить ./bin/git-cola из исходного дерева, и больше нечего делать.
Дополнительные инструкции ниже детализируют, как установить Git Cola из PYPI или как установить ее в место, отдельное от дерева источника.
Linux это! Ваше дистрибутив, вероятно, уже упаковал git-cola . Если нет, пожалуйста, подайте ошибку против вашего распространения ;-)
Доступно в AUR.
apt install git-cola
dnf install git-cola
emerge git-cola
zypper install git-cola
Доступно на Slackbuilds.org.
Смотрите здесь для версий, которые доступны в репозиториях Ubuntu.
# Install from official binary packages
pkg install -r FreeBSD devel/git-cola
# Build from source
cd /usr/ports/devel/git-cola && make clean install
ВАЖНО : Никогда не запускайте pip install или garden install за пределами Python VirtualEnv или как root!
Важно : если вы находитесь в Linux Distributions, где Pyqt6 или Pyqt5 доступны у вашего диспетчера пакетов, то настоятельно рекомендуется установить эти зависимости, используя диспетчер пакетов вашей системы. См. Раздел выше для деталей.
Один из способов установить последнюю выпущенную версию - использовать venv (VirtualEnv) и pip . Это устанавливает Git-Cola от pypi.org.
python3 -m venv --system-site-packages env3
./env3/bin/pip install git-cola
./env3/bin/git-cola
Добавьте каталог env3/bin в свой PATH или символику в bin/git-cola откуда-то на вашем PATH , например ~/.local/bin/git-cola , и вы можете запустить Git Cola, как любая другая встроенная команда git :
git cola
git dag
Если у вас нет установки PYQT, то самый простой способ получить его - использовать Python VirtualEnv и установить в него Git Cola в «редактируемом» режиме.
Этот метод установки позволяет обновлять Git Cola, запустив git pull .
# Create a virtualenv called "env3" and activate it.
python3 -m venv --system-site-packages env3
# Install PyQt and (optional) extra packages to enable all features.
./env3/bin/pip install --editable '.[extras,pyqt6]'
# Run Git Cola via the "git-cola" Git subcommand.
source env3/bin/activate
git cola
Если вы добавите env3/bin (или Symlink to env3/bin/git-cola ) где-то в вашем $PATH , то вы можете запустить git cola как будто это была git команда из внешней части виртуального цвета (например, после запуска «деактивирования» или при открытии новой оболочки).
Запуск garden -D prefix=$HOME/.local install установит git cola в вашем $HOME/.local Directory ( $HOME/.local/bin/git-cola , $HOME/.local/lib и т. Д.).
Этот метод установки предполагает, что зависимости qtpy и PyQt* были предварительно установлены.
Рецепт сада также поддерживает DESTDIR для поддержки создания пакетов для менеджеров пакетов Linux:
garden -D DESTDIR=/tmp/stage -D prefix=/usr/local install
Если у вас нет garden , то make можно использовать вместо этого. Makefile поддерживает установку установки с использованием обычных переменных Destdir и Prefix.
make DESTDIR=/tmp/stage prefix=/usr/local install
Для большинства конечных пользователей мы рекомендуем использовать либо Homebrew, либо установку в Python VirtualEnv, как описано выше.
Вы можете установить git cola из исходного источника, используя те же шаги, что и выше.
Простой способ установить Git Cola - использовать Homebrew. Используйте Homebrew, чтобы установить рецепт Git-Cola:
brew install git-cola
Если вы установите с помощью Homebrew, вы можете остановиться на этом шаге. Вам не нужно клонировать репо или что -то в этом роде.
Если у вас установлены все зависимости, либо через pip , либо brew , то вы можете построить оболочку приложения git-cola.app для использования в /Applications .
Если вы хотите построить пакет git-cola.app для /Applications Запустите эту команду:
garden macos/app
Вам нужно будет периодически перестраивать обертку приложения всякий раз, когда Python будет модернизирован.
Обновление MacOS часто может нарушать программное обеспечение, управляемое HomeBrew.
Если вы обновляете MacOS, и Git Cola перестает работать, тогда вам, вероятно, нужно переустановить зависимости Git Cola.
Повторное установление с нуля, используя инструкции ниже, может вернуть ситуацию в форме.
brew update
brew uninstall git-cola
brew uninstall pyqt
brew uninstall pyqt@5
brew autoremove
brew install git-cola
Важно, если у вас есть 64-битная машина, установите только 64-битные версии. Не смешивайте 32-битные и 64-битные версии.
Загрузите и установите следующее:
Git для Windows
Git Cola
После того, как они будут установлены, вы можете запустить Git Cola из меню «Пуск».
См. «Windows (продолжение)» ниже для более подробной информации.
Если вы хотите установить Git Cola с Winget, запустите следующую команду:
winget install git-cola.git-cola
Поскольку нет разрешения зависимостей, но вы также должны установить GIT:
winget install Git.Git
Git Cola отправляется с интерактивным редактором Rebase под названием git-cola-sequence-editor . git-cola-sequence-editor используется для повторного порядка и выбора коммитов при перебои. Запустите интерактивную переподготовку через меню «Rebase» или через подкомпания git cola rebase , чтобы использовать git-cola-sequence-editor :
git cola rebase @{upstream}
git-cola-sequence-editor может быть запущен независимо от Git Cola, сказав git rebase использовать его в качестве редактора через переменную среды GIT_SEQUENCE_EDITOR :
export GIT_SEQUENCE_EDITOR="$HOME/git-cola/bin/git-cola-sequence-editor"
git rebase -i @{upstream}
Сценарии завершения оболочки доступны для Bash и ZSH. Каждый сценарий содержит инструкции о том, как установить и активировать завершения.
Скрипт завершения
ZSH завершить скрипт
Команда git-cola обнажает различные подкоманды, которые позволяют быстро запускать инструменты, доступные в интерфейсе Git-Cola. Например, git cola find запускает File Finder, а git cola grep запускает инструмент Grep.
См. git cola --help-commands для полного списка команд.
$ git cola --help-commands
usage: git-cola [-h]
{cola,am,archive,branch,browse,config,
dag,diff,fetch,find,grep,merge,pull,push,
rebase,remote,search,stash,tag,version}
...
valid commands:
{cola,am,archive,branch,browse,config,
dag,diff,fetch,find,grep,merge,pull,push,
rebase,remote,search,stash,tag,version}
cola start git-cola
am apply patches using "git am"
archive save an archive
branch create a branch
browse browse repository
config edit configuration
dag start git-dag
diff view diffs
fetch fetch remotes
find find files
grep grep source
merge merge branches
pull pull remote branches
push push remote branches
rebase interactive rebase
remote edit remotes
search search commits
stash stash and unstash changes
tag create tags
version print the version
Если у вас уже установлены зависимости Git Cola, вы можете запустить cola в качестве модуля Python, если у вас есть исходный код.
python -m cola
python -m cola dag
Следующие команды должны выполняться во время разработки:
# Run the unit tests
$ garden test
# Run tests and doc checks
$ garden check
# Run tests against multiple python interpreters using tox
$ garden tox
Испытательный набор можно найти в тестовом каталоге.
Commits и запросы на вытягивание автоматически протестированы на качество кода с использованием действий GitHub.
Auto-Format cola/i18n/*.po -файлы перед совершением при обновлении переводов:
$ garden po
При отправке исправлений проконсультируйтесь с руководящими принципами.
Git Cola устанавливает свои модули в каталог Python Site-Packages (например lib/python3.7/site-packages ) с использованием Setuptools.
В то время как конечные пользователи могут использовать pip install git-cola для установки GIT Cola, распределительные пакеты должны использовать процесс garden -D prefix=/usr install . Рецепт Git Cola's Garden Recipe warps pip install --prefix=<prefix> чтобы обеспечить целевую установку для garden install .
Более ранние версии Git Cola, возможно, отправились без vcruntime140.dll и, возможно, не работают на машинах, которые отсутствуют в этом DLL.
Чтобы исправить это, загрузите Microsoft Visual C ++ 2015 перераспределение и установите его
Git Cola v4.0.0 и новее включают этот DLL и не требует, чтобы это было установлено отдельно.
Чтобы разработать Git Cola в Windows, вам нужно будет установить Python3 и PIP. Установите PYQT5 с помощью pip install PyQt5 чтобы сделать привязки PYQT5 доступными для Python.
После того, как они будут установлены, вы можете использовать python.exe для запуска непосредственно из дерева источника. Например, из терминала Git Bash:
/c/Python39/python.exe ./bin/git-cola
Если у вас установлен несколько версий Python, сценарий запуска contrib/win32/cola может выбрать более новую версию вместо установленного PYQT. Чтобы решить это, вы можете установить переменную конфигурации GIT cola.pythonlocation , чтобы сообщить COLA, где найти Python. Например:
git config --global cola.pythonlocation /c/Python39
Установщики Windows созданы с помощью
Пинсист.
NSIS также необходим.
Чтобы построить установщик с помощью Pynsist Run:
./contrib/win32/run-pynsist.sh
Это генерирует установщик в build/nsis/ .
Возможно, вам понадобится настроить свой исторический браузер, если вы обновляетесь с более старой версии Git Cola в Windows.
Первоначально gitk был браузером истории по умолчанию, но gitk не может быть запущен в Windows, потому что gitk -сценарий оболочки.
Если вы настроены на использование gitk , измените свою конфигурацию, чтобы пройти через sh.exe GIT в Windows. Точно так же мы должны пройти через python.exe , если хотим использовать git-dag .
Если вы хотите использовать GITK в качестве браузера по истории, откройте экран Preferences и измените команду браузера истории на:
"C:/Program Files/Git/bin/sh.exe" --login -i C:/Git/bin/gitk
git-dag стал браузером истории по умолчанию в Windows в v2.3 , поэтому новым пользователям не нужно ничего настроить.