A Powerful Git Workflow Automation Tool
Streamline your Git workflow with intelligent automation and save valuable development time
- β¨ Features
- π― What GitGo Does
- π Prerequisites
- π οΈ Installation
- π Quick Start
- π Usage Guide
- πΌοΈ Visual Setup Guide
- π€ Contributing
- π₯ Collaborators
- π License
- π Support
| Feature | Description |
|---|---|
| π Automated Push | Streamlined commit and push operations in one command |
| π Repository Linking | Initialize and link empty projects to GitHub repositories |
| πΏ Branch Management | Create and switch to new branches effortlessly |
| π¨ Colored Output | Beautiful terminal feedback with status indicators |
| β‘ Time-Saving | Reduce repetitive Git operations to single commands |
| π‘οΈ Error Handling | Robust error detection and user-friendly messages |
| π― Mission-Style UI | Engaging command-line interface with tactical feedback |
GitGo transforms complex Git workflows into simple, one-line commands. Instead of running multiple Git commands manually:
# Traditional way - Setting up a new repository
git init
git add .
git commit -m "Initial commit"
git remote add origin https://github.com/username/repo.git
git branch -M main
git push -u origin mainWith GitGo, just run:
# Link empty project to GitHub
gitgo link https://github.com/username/repo.git "Initial commit"
# Or push changes to existing repo
gitgo push main "Your commit message"Before installing GitGo, ensure you have:
| Requirement | Version | Download |
|---|---|---|
| π Python | 3.6+ | Download Python |
| π¦ Git | 2.x+ | Download Git |
| π» Operating System | Windows 10/11, Linux, or Termux | Supported on all major platforms |
Platform-Specific Notes:
- Windows: Windows Terminal recommended for best experience
- Linux: Most distributions come with Python and Git pre-installed
- Termux: Install via
pkg install python git
Choose the installation method for your platform:
git clone https://github.com/Huerte/GitGo.git
cd GitGo.\install.batThe installer will:
- β Check for Python and Git
- β
Copy files to
%APPDATA%\GitGo - β Add GitGo to your system PATH
- β Test the installation
Close and reopen your terminal or IDE for PATH changes to take effect.
git clone https://github.com/Huerte/GitGo.git
cd GitGochmod +x install.sh./install.shThe installer will:
- β Detect your Linux distribution
- β
Install files to
~/.local/share/gitgo - β
Create wrapper script in
~/.local/bin - β Provide PATH setup instructions if needed
If the installer indicates that ~/.local/bin is not in your PATH, add this line to your ~/.bashrc or ~/.zshrc:
export PATH="$PATH:$HOME/.local/bin"Then reload your shell configuration:
source ~/.bashrc # or source ~/.zshrcpkg update
pkg install python gitIf you downloaded the repository to your Android "Download" folder, move it to your Termux home directory first (required for executable permissions):
# Move from shared storage to Termux home
mv /storage/emulated/0/Download/GitGo $HOME/GitGo
cd $HOME/GitGoAlternatively, clone it directly into Termux:
cd $HOME
git clone https://github.com/Huerte/GitGo.git
cd GitGochmod +x install.sh
./install.shThe installer will:
- β Detect Termux environment
- β
Install files to
$PREFIX/share/gitgo - β
Create wrapper script in
$PREFIX/bin - β Test the installation
Note: In Termux, $PREFIX/bin is automatically in your PATH, so no additional configuration is needed!
Once installed, verify GitGo is working:
# Check if GitGo is ready
gitgo -r
# Output: ALL UNITS ONLINE. GitGo STANDING BY. AWAITING COMMANDS...For a new project:
# Link your empty project to GitHub
gitgo link https://github.com/username/your-repo.git "Initial setup"For existing repositories:
# Make some changes to your project, then:
gitgo push main "Update with GitGo"GitGo will automatically:
- β Initialize git repository (if needed)
- β
Stage all changes (
git add .) - β Commit with your message
- β Set up remote origin (link command)
- β Push to the specified branch
- β Display mission completion status
| Command | Description | Example |
|---|---|---|
gitgo -r |
Check GitGo status | gitgo -r |
gitgo link [url] [message] |
Initialize and link project to GitHub | gitgo link https://github.com/user/repo.git "Initial commit" |
gitgo push [branch] [message] |
Commit and push to existing branch | gitgo push main "Fix bug" |
gitgo push -n [branch] [message] |
Create new branch and push | gitgo push -n feature "New feature" |
gitgo update |
Update system PATH to current GitGo location | gitgo update |
gitgo help |
Show help information | gitgo help |
- New Projects: Use
gitgo linkto quickly set up new repositories - Branch Creation: Use
-nornewto create and switch to a new branch - Commit Messages: Always include meaningful commit messages
- Custom Messages: Link command supports custom commit messages or defaults to "Initial commit"
- Status Check: Run
gitgo -rto ensure everything is configured correctly - PATH Issues: Run
gitgo updatewhenever you move GitGo or see PATH warnings
Successful Push Operation:
β
MISSION COMPLETE β NO CASUALTIES. ALL TARGETS NEUTRALIZED.
AWAITING FOR YOUR NEXT ORDERS.
Successful Link Operation:
π― LINK OPERATION COMPLETE! REPOSITORY LOCKED AND LOADED!
Ready to push with: gitgo push main 'your message'
AWAITING FURTHER ORDERS...
Ready Status:
π΅ ALL UNITS ONLINE. GitGo STANDING BY. AWAITING COMMANDS...
The gitgo link command is perfect for connecting empty projects to GitHub repositories. Here's what it does:
Step-by-Step Process:
- π Smart Detection - Checks if directory is already a git repository
- π― Initialize - Creates git repository if needed
- π Stage Files - Adds all project files (
git add .) - πΎ Initial Commit - Creates commit with custom or default message
- π Remote Setup - Adds GitHub repository as origin
- β Connection Test - Verifies remote repository accessibility
- πΏ Main Branch - Ensures you're on the 'main' branch
Usage Examples:
# Basic usage with default "Initial commit" message
gitgo link https://github.com/username/my-project.git
# Custom commit message
gitgo link https://github.com/username/my-project.git "Project setup complete"
# Get help for link command
gitgo link --helpWhat Makes Link Special:
- π‘οΈ Safe Operation - Won't overwrite existing git repositories
- π Smart Remote Handling - Updates existing remotes if needed
- π¨ Beautiful Feedback - Clear status updates throughout the process
- β‘ One Command Setup - Replaces 6+ manual git commands
The gitgo update command fixes PATH issues when GitGo has been moved to a different location. Now works on Windows, Linux, and Termux!
When to Use Update:
- π¨ When you see "PATH OUTDATED DETECTED!" warnings
- π After moving GitGo to a new directory
- π When
gitgocommand stops working from other directories - π οΈ During initial setup if PATH configuration fails
Step-by-Step Process:
- π Platform Detection - Automatically detects your operating system
- π Wrapper Creation - Creates/updates wrapper script (
.batfor Windows, shell script for Linux/Termux) - π― PATH Validation - Checks if target directory is in system PATH
- π Instructions - Provides platform-specific PATH setup steps if needed
- β Verification - Confirms successful update
Usage Examples:
# Basic update command (works on all platforms)
gitgo update
# Get help for update command
gitgo update --helpWhat Makes Update Special:
- π‘οΈ Cross-Platform - Automatically detects and configures for your OS
- π Smart Detection - Finds the best system directory for your platform
- π Clear Instructions - Provides platform-specific PATH setup guide
- β‘ Quick Fix - Resolves PATH issues in seconds
Platform-Specific Behavior:
- Windows: Creates
gitgo.batin%APPDATA%\Local\Microsoft\WindowsAppsor%USERPROFILE%\bin - Linux: Creates
gitgoshell script in~/.local/bin - Termux: Creates
gitgoshell script in$PREFIX/bin
Common Update Scenarios:
# Scenario 1: Moved GitGo folder
# Error: "PATH OUTDATED DETECTED!"
gitgo update
# Scenario 2: Fresh installation
# Error: "'gitgo' is not recognized..." or "command not found"
cd path/to/GitGo/src
python gitgo.py update # Windows
python3 gitgo.py update # Linux/Termux
# Scenario 3: After system changes
# GitGo stops working from other directories
gitgo updateWe welcome contributions from the community! Here's how you can help:
- π Report Bugs - Found an issue? Let us know!
- π‘ Suggest Features - Have ideas for improvements?
- π Improve Documentation - Help make our docs better
- π§ Submit Code - Fix bugs or add new features
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Huerte π Profile |
Venomous-pie π Profile |
Special thanks to our collaborators for their dedication and expertise in creating this powerful Git automation tool.
This project is licensed under the MIT License - see the LICENSE file for details.
MIT License - Feel free to use, modify, and distribute this software.
If you encounter any issues or have questions:
- π Documentation - Check this README and inline help (
gitgo help) - π GitHub Issues - Open an issue for bugs or feature requests
- π¬ Discussions - Join our GitHub Discussions
- π§ Direct Contact - Reach out to the maintainers
Common Issues:
| Problem | Solution | Platform |
|---|---|---|
gitgo command not found |
Run gitgo update from GitGo directory, or restart terminal after installation |
All |
| PATH OUTDATED DETECTED warning | Run gitgo update to fix PATH configuration |
All |
| Dubious Ownership / Security Alert | Smart Fix: GitGo will detect this and offer to fix it automatically! | All (Common in Termux) |
| Permission errors (Windows) | Run PowerShell as Administrator | Windows |
| Permission errors (Linux/Termux) | Check file permissions: chmod +x ~/.local/bin/gitgo |
Linux/Termux |
| Git errors | Verify you're in a Git repository | All |
| GitGo stops working after moving folder | Run gitgo update from the new location |
All |
~/.local/bin not in PATH |
Add export PATH="$PATH:$HOME/.local/bin" to ~/.bashrc |
Linux |
| Python not found (Termux) | Run pkg install python |
Termux |
Platform-Specific Troubleshooting:
Windows:
# If gitgo command not found after installation:
cd "C:\Programs\Git Tools\GitGo\src"
python gitgo.py update
# Then restart your terminalLinux:
# If gitgo command not found:
cd ~/path/to/GitGo
./install.sh
# If still not working, manually add to PATH:
echo 'export PATH="$PATH:$HOME/.local/bin"' >> ~/.bashrc
source ~/.bashrcTermux:
# If gitgo command not found:
cd ~/GitGo
./install.sh
# Verify installation:
which gitgo
gitgo -rMade with β€οΈ by the GitGo Team