Metadata-Version: 2.1
Name: gita
Version: 0.5.2
Summary: Manage multiple git repos
Home-page: https://github.com/nosarthur/gita
Author: Dong Zhou
Author-email: zhou.dong@gmail.com
License: MIT
Description: [![PyPi version](https://img.shields.io/pypi/v/gita.svg)](https://pypi.org/project/gita/)
        [![Build Status](https://travis-ci.org/nosarthur/gita.svg?branch=master)](https://travis-ci.org/nosarthur/gita)
        # A command-line tool to manage multiple git repos
        
        This tool does two things
        
        * display the status of multiple git repos such as branch, modification, commit message side by side
        * delegate git commands for the repos
        
        ![gita screenshot](https://github.com/nosarthur/gita/raw/master/screenshot.png)
        
        Here the colors denote the 5 situations between local and remote branches:
        
        * white: the local branch has no remote branch.
        * green: the local branch is the same as the remote branch.
        * red: the local branch has diverged from the remote branch.
        * purple: the local branch is ahead of the remote branch (good for push).
        * yellow: the local branch is behind the remote branch (good for merge).
        
        The choice of purple for ahead and yellow for behind is motivated by
        [blueshift](https://en.wikipedia.org/wiki/Blueshift) and [redshift](https://en.wikipedia.org/wiki/Redshift),
        using green as baseline.
        
        The additional status symbols have the following meaning:
        
        * `+`: staged change exists
        * `*`: unstaged change exists
        * `_`: untracked files/folders exist
        
        The supported sub-commands for git delegation are
        
        * `gita add <repo-path>`: add repo to `gita`
        * `gita difftool <repo-name(s)>`: show differences for the specified repo(s)
        * `gita fetch`: fetch all remote updates
        * `gita fetch <repo-name(s)>`: fetch remote updates for the specified repo(s)
        * `gita log <repo-name(s)>`: show log of the specified repo(s)
        * `gita ls`: display the status of all repos
        * `gita ls <repo-name>`: display the absolute path of the specified repo
        * `gita merge <repo-name(s)>`: merge remote updates for the specified repo(s)
        * `gita pull <repo-name(s)>`: pull remote updates for the specified repo(s)
        * `gita push <repo-name(s)>`: push local updates of the specified repo(s) to remote
        * `gita rm <repo-name>`: remove repo from `gita` (won't remove repo from disk)
        * `gita status <repo-name(s)>`: show repo(s) status
        
        The repo paths are saved in `~/.gita_path`
        
        ## installation
        
        To install the latest version,
        
        ```
        pip3 install gita
        ```
        
        Alternatively, you can download the source code and run `pip3 install -e <gita source folder>`.
        This is known as the development mode.
        In this case, calling `gita` in bash may not work, and you can put the following line in the `.bashrc` file
        ```
        alias gita="python3 -m gita"
        ```
        
        ## TODO
        * auto-completion
        
Keywords: git,manage multiple repositories
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: License :: OSI Approved :: MIT License
Description-Content-Type: text/markdown
