Skip to main content

A cross-platform Git GUI tool

Project description

QGitc

Build Status Unit Testing Coverage PyPI version Python version License

A cross-platform Git GUI tool designed to simplify commit history exploration, blame tracking, committing changes, and resolving conflicts. Leverage AI for generating commit messages and performing code reviews.

Screenshots

Main Window

Main Window

Blame Window

Blame

Commit Window

Commit

Branch Compare Window

Branch Compare

AI Assistant

AI Assistant

Merge Tool

Merge Tool

Cherry-Pick

Cherry-Pick

Features

  • Two branches view for easy comparing a conflict commit base on the file.
  • Visualize white spaces and carriage return for easy diff compare.
  • Syntax highlight for diff contents.
  • Filter logs by file path or commit pattern.
  • Copy commit summary as HTML format for pasting.
  • Custom pattern for creating links.
  • Collect conflict files for merging.
  • Launch specify merge tool for specify file suffix.
  • Builtin image diff tool for easy finding the difference.
  • Auto finding which commit cause conflicts.
  • File blame support
  • AI intergrated
  • Composite mode
  • AI-based commit
  • AI-based code review
  • Branch compare, to show full changes for two branches
  • Cherry-Pick, support drag & drop and pick full branch

Requirements

  • pip install -r requirements.txt
  • git (command line)
  • pywin32
    • Optional for Windows if you want record the conflict log easily
  • pywpsrpc
    • Optional for Linux if you want record the conflict log easily
  • openpyxl
    • Optional if no pywin32/ pywpsrpc is available

Build & Run

  • Using source directly

    • Run python setup.py build to build the project
    • Run qgitc.py under project root directory.
  • Build from source

    • Run pip install . under project root directory to install qgitc, and then run qgitc command.
  • Install from pypi

    • pip install qgitc

Shell Integration

qgitc shell register
# to unregister, run:
qgitc shell unregister

# to use the source directly:
python qgitc.py shell register

# for Linux user
# if your file manager isn't the default one comes with desktop
# say your desktop is Ubuntu, but use thunar as default one
# use --file-manager to specify reigster for
qgitc shell register --file-manager=thunar

Icons

Most of the SVG icons come from Google Fonts.

Some were resized with Inkscape to match the size for QGitc.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

qgitc-6.3.8-py3-none-any.whl (348.5 kB view details)

Uploaded Python 3

File details

Details for the file qgitc-6.3.8-py3-none-any.whl.

File metadata

  • Download URL: qgitc-6.3.8-py3-none-any.whl
  • Upload date:
  • Size: 348.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for qgitc-6.3.8-py3-none-any.whl
Algorithm Hash digest
SHA256 470bbe442f5f930e2cf2b527e99169828dea8cb723d26c9be3b3fe486cf70495
MD5 71f6602bc5a815f46a4c6c10edc5368c
BLAKE2b-256 fa3a5086defafc735e38cd6b4b53b68e881e29bf941daf1274605594a2c9aa94

See more details on using hashes here.

Provenance

The following attestation bundles were made for qgitc-6.3.8-py3-none-any.whl:

Publisher: main.yml on timxx/qgitc

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page