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,因此您可以根据需要将QT_API环境变量设置为PYQT6,PYQT5或PYSIDE2,从而在pyqt6 , pyqt5和pyside2之间进行选择。如果未安装pyqt5 ,则将qtpy默认为pyqt5 ,然后落回pyqt6和pyside2 。
必须安装以下任何Python QT库:
PYQT5 / PYQT6 5.9或需要更新。还通过QTPY支持QT 6.2或更新。
Pyside2 5.12.0或更新。
当安装以下Python模块时,Git Cola可以启用其他功能。
send2trash启用跨平台“发送到垃圾”功能。 (来源)
notify2启用桌面通知。 (来源)
PYOBJC在MacOS上启用MacOS特定应用主题。 (来源)
有几种安装git可乐的方法,但是您不需要“安装” git Cola即可运行它。
Git Cola旨在直接从其源树运行。安装是可选的。
运行最新git Cola版本的推荐方法是使用Distraction的软件包管理器安装其PYQT依赖关系,然后直接从源运行./bin/git-cola 。
Git Cola可与PYQT5或PYQT6一起使用,因为它使用QTPY库进行PYQT兼容性。
较新的Debian/Ubuntu版本上的用户可以安装一个从源运行的单个软件包。
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 ,而无事可做。
下面的其他说明详细介绍了如何从PYPI安装Git Cola或如何将其安装到与源树分开的位置。
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
重要的是:切勿在Python Virtualenv或Root上安装pip install或garden install !
重要的是:如果您正在使用PYQT6或PYQT5的Linux发行版,则强烈建议使用系统的软件包管理器安装这些依赖项。有关详细信息,请参见上面的部分。
安装最新发布版本的一种方法是使用venv (Virtualenv)和pip 。这是从pypi.org安装git-cola。
python3 -m venv --system-site-packages env3
./env3/bin/pip install git-cola
./env3/bin/git-cola
将env3/bin目录添加到您的PATH或符号链接中,从PATH中的某个地方(例如~/.local/bin/git-cola添加到bin/git-cola ,您可以像任何其他内置的git命令一样启动git cola:
git cola
git dag
如果您没有安装PYQT,那么获得它的最简单方法是使用Python Virtualenv并以“可编辑”模式安装Git Cola。
此安装方法使您可以通过运行git pull来升级git Cola。
# 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添加到env3/bin/git-cola )在$PATH中的某个地方,则可以运行git cola ,就好像它是来自Virtualenv外部的内置git命令(例如,在运行“停用”或打开新的外壳时)。
运行garden -D prefix=$HOME/.local install将在您的$HOME/.local目录中安装git cola( $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和前缀变量进行安装。
make DESTDIR=/tmp/stage prefix=/usr/local install
对于大多数最终用户,我们建议使用上述自制或安装到Python Virtualenv中。
您可以使用与上述相同的步骤从源安装git Cola。
安装Git Cola的一种简单方法是使用自制。使用自制的安装git-cola食谱:
brew install git-cola
如果您使用Homebrew安装,则可以在此步骤中停止。您无需克隆回购或任何东西。
如果您安装了所有依赖项,则可以通过pip或brew ,然后可以构建一个shell git-cola.app应用包包装器,以便在/Applications中使用。
如果您想构建一个git-cola.app捆绑包/Applications运行以下命令:
garden macos/app
每当python升级时,您都需要定期重建应用程序包装器。
更新MacOS通常会破坏由自制的软件。
如果您更新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位版本。
下载并安装以下内容:
Windows的git
Git Cola
安装这些内容后,您可以从开始菜单运行git Cola。
有关更多详细信息,请参见下面的“ Windows(续)”。
如果您想在Winget上安装Git Cola,请运行以下命令:
winget install git-cola.git-cola
由于尚无依赖分辨率,因此您也必须安装git:
winget install Git.Git
Git Cola用互动式反弹编辑称为git-cola-sequence-editor 。 git-cola-sequence-editor用于重新订购并选择提交。通过“ rebase”菜单或通过git cola rebase子命令启动交互式重新构想以使用git-cola-sequence-editor :
git cola rebase @{upstream}
可以通过告诉git rebase将其通过GIT_SEQUENCE_EDITOR环境变量将其用作编辑器,可以独立于git cola启动git-cola-sequence-editor :
export GIT_SEQUENCE_EDITOR="$HOME/git-cola/bin/git-cola-sequence-editor"
git rebase -i @{upstream}
外壳完成脚本可用于BASH和ZSH。每个脚本都包含有关如何安装和激活完成的说明。
bash完成脚本
ZSH完成脚本
git-cola命令公开了各种子命令,使您可以快速启动从Git-Cola接口中可用的工具。例如, git cola find启动了文件查找器, 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
可以在测试目录中找到测试套件。
使用GitHub操作自动测试提交和拉动请求的代码质量。
在更新翻译时提交之前,自动式cola/i18n/*.po文件:
$ garden po
提交补丁时,请咨询贡献指南。
Git Cola使用SetUptools将其模块安装到默认的Python站点包装目录中(例如lib/python3.7/site-packages )。
尽管最终用户可以使用pip install git-cola安装git cola,但分销包装器应使用garden -D prefix=/usr install过程。 Git Cola的花园食谱包装pip install --prefix=<prefix>提供包装友好的garden install目标。
Git Cola的早期版本可能已经发货了,没有vcruntime140.dll ,并且可能不会在缺少该DLL的机器上运行。
要解决此问题,请下载Microsoft Visual C ++ 2015重新分配并安装
git cola v4.0.0及其较新的包含此DLL,不需要单独安装。
为了在Windows上开发Git Cola,您需要安装Python3和Pip。使用pip install PyQt5以使Pyqt5绑定可用于Python。
安装这些内容后,您可以使用python.exe直接从源树运行。例如,来自git bash终端:
/c/Python39/python.exe ./bin/git-cola
如果您安装了多个版本的Python,则contrib/win32/cola Launcher脚本可能会选择较新版本,而不是已安装PYQT的Python。为了解决此问题,您可以设置cola.pythonlocation Git配置变量,以告诉Cola在哪里可以找到Python。例如:
git config --global cola.pythonlocation /c/Python39
Windows安装程序是使用
pynsist。
还需要NSIS。
使用pynsist运行构建安装程序:
./contrib/win32/run-pynsist.sh
这将在build/nsis/中生成安装程序。
如果您正在从Windows上的git Cola升级,则可能需要配置历史记录浏览器。
gitk最初是默认的历史记录浏览器,但是gitk不能在Windows上启动,因为gitk是Shell脚本。
如果您被配置为使用gitk ,请更改配置,以通过Windows上的Git的sh.exe 。同样,如果要使用git-dag ,我们必须通过python.exe进行。
如果要使用gitk作为历史记录浏览器打开首选项屏幕,然后将“历史记录浏览器命令”更改为:
"C:/Program Files/Git/bin/sh.exe" --login -i C:/Git/bin/gitk
git-dag成为v2.3中Windows上的默认历史记录浏览器,因此新用户无需配置任何内容。