Git Clients

pygitzen – Python terminal-based Git client

pygitzen is a terminal-based Git client written in Python, using Textual and Rich to provide an interactive, multi-panel interface. Its design takes inspiration from lazygit while using the Dulwich library for core repository operations.

The application brings repository status, branches, commits and file changes into one environment. Developers can navigate between panels to inspect history, examine patches and manage working-tree changes through keyboard and mouse interactions.

This is free and open source software.

Key Features

  • Multi-panel interface includes status, staged changes, working-tree changes, branches, commits, patches, stashes and command logs.
  • Core Git operations use the Dulwich Python library without requiring an external Git command for every action.
  • Automatically detects modified, staged, deleted and untracked files.
  • Displays repository status information with refreshable views of current changes.
  • Stage and unstage individual files through the changes panels.
  • Discard staged or unstaged modifications using dedicated actions and confirmation prompts.
  • Browse commits associated with selected branches.
  • Displays whether commits have been pushed to a remote repository.
  • Patch previews update automatically when navigating commit history.
  • Provides branch creation, checkout, deletion, renaming and merging operations.
  • Stash management offers access to saved working-tree changes.
  • Respects .gitignore rules when examining repository status.
  • Supports initial commits and displays the files included in a repository’s root commit.
  • Vim-style keyboard navigation supports movement between interface elements.
  • Mouse interaction, focus highlighting and configurable keybindings help personalise the interface.
  • A command log panel can be shown or hidden to inspect application operations.
  • Cross-platform support – runs on Linux, macOS, and Windows.

Website: github.com/SunnyTamang/pygitzen
Support:
Developer: Sunny Tamang
License: MIT License

pygitzen in action
Click image for full size

pygitzen is written in Python. Learn Python with our recommended free books and free tutorials.


Related Software

Text-Based Git Clients
lazygitSimple yet hugely popular terminal UI for git commands, written in Go
GitUIOffers the comfort of a GUI git client but right in your terminal
FugitiveVim plugin for Git
MagitInspect and modify your Git repositories with Emacs
tigncurses-based Git repository browser
NeogitGit interface plugin for Neovim inspired by Magit
forgitUtility for using git interactively
GituTUI Git client inspired by Magit
ggcGo Git CLI
bitExperimental modernized git CLI
pygitzenPython-native terminal-based Git client
gitinCommit, branch, status explorer for Git
FroggitModern, minimalist Git TUI
GitwigKeyboard-driven terminal interface for managing Git repositories

Read our verdict in the software roundup.


Best Free and Open Source Software LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.

We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more.

Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion.

Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README.
Subscribe

Please read our Comment Policy before commenting.

Notify of
guest
0 Comments
Oldest
Newest Most Voted