giterm


Namegiterm JSON
Version 0.7.0 PyPI version JSON
download
home_pagehttps://github.com/timlegrand/giterm
SummaryA terminal-based GUI client for Git
upload_time2023-01-21 08:52:31
maintainer
docs_urlNone
authorTim Legrand
requires_python
licenseBSD 2-Clause
keywords git client terminal console
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI
coveralls test coverage No coveralls.
            .. image:: https://img.shields.io/travis/timlegrand/giterm.svg
    :alt: Travis-ci build information

.. image:: https://badge.fury.io/py/giterm.svg
    :alt: giterm is officially packaged at PyPI
    :target: https://badge.fury.io/py/giterm

.. image:: https://img.shields.io/pypi/dm/giterm.svg
    :alt: giterm can be found on PyPI official

.. image:: https://img.shields.io/pypi/status/giterm.svg
    :alt: giterm development status

.. image:: https://img.shields.io/pypi/l/giterm.svg
    :alt: giterm is released under BSD 2-Clause license

.. image:: https://badges.gitter.im/timlegrand/giterm.svg
    :alt: Join the chat at https://gitter.im/timlegrand/giterm
    :target: https://gitter.im/timlegrand/giterm?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge

Features
========

Giterm is a ncurses-based terminal GUI for Git. It brings information about the current status of your Git working copy right in your terminal, *real-time*.

It exposes in a single view:

- local branches, and which branch you’re currently on
- remote branches, and which branch the current local branch is
  tracking
- commit history, and which commit you are currently working from
- current changes
- a *diff* view of the selected file in the *changes* list


Real-time!
----------

Every change to the working copy (file edition/move or any Git command)
updates the GUI instantly. You can work as usual, and keep a terminal
open with giterm to get instant feedback on your actions.

.. image:: assets/screenshot.png
    :alt: screenshot of giterm interface
    :align: center

.. note:: Giterm essentially *shows* Git information. It does not support git actions like commit, checkout, branch switching, committing. Only staging/unstaging is supported at this time.


Installation
============

.. code-block:: bash

    pip install giterm

Or even better:

.. code-block:: bash

    pipx run giterm

If you don’t have ``pip`` installed yet:

.. code-block:: bash

    curl -s https://bootstrap.pypa.io/get-pip.py | sudo python
    pip install giterm

.. note:: Windows users beware, Python for Windows doesn't come with curses. You need to visit `curses repository <http://www.lfd.uci.edu/~gohlke/pythonlibs/#curses>`_, download the version of curses that corresponds to your Windows and version of Python, and then pip install the whl file with the python you plan on using.


Usage
=====

.. code-block:: bash

    cd path/to/git/working/copy
    giterm


Keymap
------

- [tab]: Toggle panel
- [shift + tab]: Reverse Toggle
- [up]/[down]: Scroll line by line
- [page up]/[page down]: Scroll screen by screen
- [h]: Log history
- [c]: Changes view
- [s]: Staging area
- [d]: Diff view
- [b]: Branches
- [r]: Remotes
- [t]: Tags
- [space]: Stage/unstage current file
- [q]: Quit


Requirements
============

Giterm needs the ``git`` executable to be installed and available in the
PATH of your system. Others dependencies should be automatically handled
by ``pip``.


Technical background
====================

Giterm uses subprocesses to call Git shell-based commands, and parses
their outputs to bring the relevant information to the user interface.

It also uses a watchdog to listen file changes in the current working
directory.


License
=======

This software is provided under the BSD 2-Clause License. Please read
the `LICENSE file`_ for further information.


Contribute
==========

See the `CONTRIBUTING file`_ for how to help out.

Many thanks for your support!


.. _LICENSE file: ./LICENSE
.. _CONTRIBUTING file: ./CONTRIBUTING.rst

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/timlegrand/giterm",
    "name": "giterm",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "git,client,terminal,console",
    "author": "Tim Legrand",
    "author_email": "timlegrand.perso+dev@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/b3/6c/fce264a27d5fe08b7cb58759c283617e7545986e62540c99b49e1dfee127/giterm-0.7.0.tar.gz",
    "platform": null,
    "description": ".. image:: https://img.shields.io/travis/timlegrand/giterm.svg\n    :alt: Travis-ci build information\n\n.. image:: https://badge.fury.io/py/giterm.svg\n    :alt: giterm is officially packaged at PyPI\n    :target: https://badge.fury.io/py/giterm\n\n.. image:: https://img.shields.io/pypi/dm/giterm.svg\n    :alt: giterm can be found on PyPI official\n\n.. image:: https://img.shields.io/pypi/status/giterm.svg\n    :alt: giterm development status\n\n.. image:: https://img.shields.io/pypi/l/giterm.svg\n    :alt: giterm is released under BSD 2-Clause license\n\n.. image:: https://badges.gitter.im/timlegrand/giterm.svg\n    :alt: Join the chat at https://gitter.im/timlegrand/giterm\n    :target: https://gitter.im/timlegrand/giterm?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge\n\nFeatures\n========\n\nGiterm is a ncurses-based terminal GUI for Git. It brings information about the current status of your Git working copy right in your terminal, *real-time*.\n\nIt exposes in a single view:\n\n- local branches, and which branch you\u2019re currently on\n- remote branches, and which branch the current local branch is\n  tracking\n- commit history, and which commit you are currently working from\n- current changes\n- a *diff* view of the selected file in the *changes* list\n\n\nReal-time!\n----------\n\nEvery change to the working copy (file edition/move or any Git command)\nupdates the GUI instantly. You can work as usual, and keep a terminal\nopen with giterm to get instant feedback on your actions.\n\n.. image:: assets/screenshot.png\n    :alt: screenshot of giterm interface\n    :align: center\n\n.. note:: Giterm essentially *shows* Git information. It does not support git actions like commit, checkout, branch switching, committing. Only staging/unstaging is supported at this time.\n\n\nInstallation\n============\n\n.. code-block:: bash\n\n    pip install giterm\n\nOr even better:\n\n.. code-block:: bash\n\n    pipx run giterm\n\nIf you don\u2019t have ``pip`` installed yet:\n\n.. code-block:: bash\n\n    curl -s https://bootstrap.pypa.io/get-pip.py | sudo python\n    pip install giterm\n\n.. note:: Windows users beware, Python for Windows doesn't come with curses. You need to visit `curses repository <http://www.lfd.uci.edu/~gohlke/pythonlibs/#curses>`_, download the version of curses that corresponds to your Windows and version of Python, and then pip install the whl file with the python you plan on using.\n\n\nUsage\n=====\n\n.. code-block:: bash\n\n    cd path/to/git/working/copy\n    giterm\n\n\nKeymap\n------\n\n- [tab]: Toggle panel\n- [shift + tab]: Reverse Toggle\n- [up]/[down]: Scroll line by line\n- [page up]/[page down]: Scroll screen by screen\n- [h]: Log history\n- [c]: Changes view\n- [s]: Staging area\n- [d]: Diff view\n- [b]: Branches\n- [r]: Remotes\n- [t]: Tags\n- [space]: Stage/unstage current file\n- [q]: Quit\n\n\nRequirements\n============\n\nGiterm needs the ``git`` executable to be installed and available in the\nPATH of your system. Others dependencies should be automatically handled\nby ``pip``.\n\n\nTechnical background\n====================\n\nGiterm uses subprocesses to call Git shell-based commands, and parses\ntheir outputs to bring the relevant information to the user interface.\n\nIt also uses a watchdog to listen file changes in the current working\ndirectory.\n\n\nLicense\n=======\n\nThis software is provided under the BSD 2-Clause License. Please read\nthe `LICENSE file`_ for further information.\n\n\nContribute\n==========\n\nSee the `CONTRIBUTING file`_ for how to help out.\n\nMany thanks for your support!\n\n\n.. _LICENSE file: ./LICENSE\n.. _CONTRIBUTING file: ./CONTRIBUTING.rst\n",
    "bugtrack_url": null,
    "license": "BSD 2-Clause",
    "summary": "A terminal-based GUI client for Git",
    "version": "0.7.0",
    "split_keywords": [
        "git",
        "client",
        "terminal",
        "console"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b31945cf5f30f262b39860394553dc7e53ae2af9d7b140bdc234c0b15a4c9039",
                "md5": "f9c6887f229b92c234d7d2024b037373",
                "sha256": "ddc7c1b2a7458367cdf973b492b183b8393003a8e175b2beefe4f539b6cb82f5"
            },
            "downloads": -1,
            "filename": "giterm-0.7.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "f9c6887f229b92c234d7d2024b037373",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 17801,
            "upload_time": "2023-01-21T08:52:29",
            "upload_time_iso_8601": "2023-01-21T08:52:29.459903Z",
            "url": "https://files.pythonhosted.org/packages/b3/19/45cf5f30f262b39860394553dc7e53ae2af9d7b140bdc234c0b15a4c9039/giterm-0.7.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b36cfce264a27d5fe08b7cb58759c283617e7545986e62540c99b49e1dfee127",
                "md5": "30a9e9d71d3bfa2e99fc6ad34a3e43dc",
                "sha256": "e976e07c545d517e0e2f010a73255b82053cf129d3bc2d74fda27f2a5743ea97"
            },
            "downloads": -1,
            "filename": "giterm-0.7.0.tar.gz",
            "has_sig": false,
            "md5_digest": "30a9e9d71d3bfa2e99fc6ad34a3e43dc",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 16141,
            "upload_time": "2023-01-21T08:52:31",
            "upload_time_iso_8601": "2023-01-21T08:52:31.188411Z",
            "url": "https://files.pythonhosted.org/packages/b3/6c/fce264a27d5fe08b7cb58759c283617e7545986e62540c99b49e1dfee127/giterm-0.7.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-01-21 08:52:31",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "timlegrand",
    "github_project": "giterm",
    "travis_ci": true,
    "coveralls": false,
    "github_actions": false,
    "requirements": [],
    "tox": true,
    "lcname": "giterm"
}
        
Elapsed time: 0.07311s