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

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

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.1.4-py3-none-any.whl (314.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: qgitc-6.1.4-py3-none-any.whl
  • Upload date:
  • Size: 314.9 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.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 326faed6f49eaa1d743ab2322531082931f930a4d424e36b013b310d5f68a3e3
MD5 498f5ef91479be5c222e547a37f570c8
BLAKE2b-256 02fd6554c9a4c3487a23dc5710894652f659441b1968f06db3114a20c1b5cbfd

See more details on using hashes here.

Provenance

The following attestation bundles were made for qgitc-6.1.4-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