ManaGit is a CLI tool designed to manage and automate workflows across multiple Git repositories from a single interface.
It provides both command-line options and an interactive shell to streamline repository maintenance, updates, and status tracking.
- Interactive shell with a clean, colorful interface
pullstatusaddcommitpushbranch- Some shell commands
- Safe signal handling (blocks Ctrl+C inside the shell)
cd project
make installmake create-envnano ~/.bashrcremember to change
"python3"with you python interpreter
alias py="python3"
alias managit="py ~/.managit/program/managit/src/run_managit.py"CTRL^X
Y
ENTERsource ~/.bashrcmanagitThis will not install managit as a package, so if you need to update it, you can go to repository with
cd ~/.managitand run pull or create the alias managit-update (intructions in the end of the README).
Simply run:
managitOr (if installed as package):
managit --start- pull — Pull latest changes from remote
- add — Add the intructed files to track
- commit — Check untracked files and run commit message creator
- push — Push to remote (asks if you want --force)
- branch — create a new branch copying the main
- clear — Clear terminal screen
- cd — Navigate into repositories (also works just entering the path)
- ls — show files in the current path
- exit — Exit managit
- New colors
deconflit— to fix conflit between local and remote repositoryconfig— to configure git user datarestore— to restore local repositoryclone— to clone repositoryenv_checker()— do now allow commit with .env in track
managit/project/
├─ 📁 program
│ ├─ 📁 managit
│ │ ├─ 📁 src
│ │ │ ├─ 🐍 __init__.py
│ │ │ ├─ 🐍 get_commit_info.py
│ │ │ ├─ 🐍 git_cmds.py
│ │ │ ├─ 🐍 main.py
│ │ │ ├─ 🐍 managitshell.py
│ │ │ ├─ 🐍 parser_git_status.py
│ │ │ ├─ 🐍 run_managit.py
│ │ │ ├─ 🐍 shell_cmds.py
│ │ │ └─ 🐍 shells_prompt.py
│ │ ├─ 📁 utils
│ │ │ ├─ 🐍 __init__.py
│ │ │ ├─ 🐍 clear.py
│ │ │ ├─ 🐍 colors.py
│ │ │ └─ 🐍 nbr.py
│ │ └─ 🐍 __init__.py
│ ├─ 📄 Makefile
│ ├─ 🐍 setup.py
│ └─ 🐍 setup.py
├─ 📁 src
│ └─ 🖼️ *.png
├─ ⚙️ .gitignore
├─ 📄 LICENSE
├─ 📝 PREVIEW.md
└─ 📝 README.md
Python 3.6+ setuptools for packaging subprocess for Git integration Custom colored terminal output
This project is licensed under the MIT License — see the LICENSE file for details.
Made by Vinny (@vgomes-p)
Feel free to open issues or submit PRs.

