Skip to content

Huerte/GitGo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

63 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ GitGo

A Powerful Git Workflow Automation Tool

License: MIT Python 3.6+ Platform Git

Streamline your Git workflow with intelligent automation and save valuable development time


πŸ“‹ Table of Contents


✨ Features

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

🎯 What GitGo Does

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 main

With 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"

πŸ“‹ Prerequisites

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

πŸ› οΈ Installation

Choose the installation method for your platform:

πŸͺŸ Windows Installation

Step 1: Clone the Repository

git clone https://github.com/Huerte/GitGo.git
cd GitGo

Step 2: Run the Installer

.\install.bat

The installer will:

  • βœ… Check for Python and Git
  • βœ… Copy files to %APPDATA%\GitGo
  • βœ… Add GitGo to your system PATH
  • βœ… Test the installation

Step 3: Restart Your Terminal

Close and reopen your terminal or IDE for PATH changes to take effect.


οΏ½ Linux Installation

Step 1: Clone the Repository

git clone https://github.com/Huerte/GitGo.git
cd GitGo

Step 2: Make Installer Executable

chmod +x install.sh

Step 3: Run the Installer

./install.sh

The installer will:

  • βœ… Detect your Linux distribution
  • βœ… Install files to ~/.local/share/gitgo
  • βœ… Create wrapper script in ~/.local/bin
  • βœ… Provide PATH setup instructions if needed

Step 4: Update PATH (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 ~/.zshrc

πŸ“± Termux Installation (Android)

Step 1: Install Prerequisites

pkg update
pkg install python git

Step 2: Clone or Move the Repository

If 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/GitGo

Alternatively, clone it directly into Termux:

cd $HOME
git clone https://github.com/Huerte/GitGo.git
cd GitGo

Step 3: Run the Installer

chmod +x install.sh
./install.sh

The 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!


πŸš€ Quick Start

Once installed, verify GitGo is working:

# Check if GitGo is ready
gitgo -r
# Output: ALL UNITS ONLINE. GitGo STANDING BY. AWAITING COMMANDS...

Your First GitGo Command

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:

  1. βœ… Initialize git repository (if needed)
  2. βœ… Stage all changes (git add .)
  3. βœ… Commit with your message
  4. βœ… Set up remote origin (link command)
  5. βœ… Push to the specified branch
  6. βœ… Display mission completion status

πŸ“– Usage Guide

🎯 Command Reference

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

πŸ’‘ Pro Tips

  • New Projects: Use gitgo link to quickly set up new repositories
  • Branch Creation: Use -n or new to 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 -r to ensure everything is configured correctly
  • PATH Issues: Run gitgo update whenever you move GitGo or see PATH warnings

🎨 Output Examples

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...

πŸ”— Link Command Deep Dive

The gitgo link command is perfect for connecting empty projects to GitHub repositories. Here's what it does:

Step-by-Step Process:

  1. πŸ” Smart Detection - Checks if directory is already a git repository
  2. 🎯 Initialize - Creates git repository if needed
  3. πŸ“ Stage Files - Adds all project files (git add .)
  4. πŸ’Ύ Initial Commit - Creates commit with custom or default message
  5. πŸ”— Remote Setup - Adds GitHub repository as origin
  6. βœ… Connection Test - Verifies remote repository accessibility
  7. 🌿 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 --help

What 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

πŸ”§ Update Command Deep Dive

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 gitgo command stops working from other directories
  • πŸ› οΈ During initial setup if PATH configuration fails

Step-by-Step Process:

  1. πŸ” Platform Detection - Automatically detects your operating system
  2. πŸ“ Wrapper Creation - Creates/updates wrapper script (.bat for Windows, shell script for Linux/Termux)
  3. 🎯 PATH Validation - Checks if target directory is in system PATH
  4. πŸ“‹ Instructions - Provides platform-specific PATH setup steps if needed
  5. βœ… Verification - Confirms successful update

Usage Examples:

# Basic update command (works on all platforms)
gitgo update

# Get help for update command
gitgo update --help

What 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.bat in %APPDATA%\Local\Microsoft\WindowsApps or %USERPROFILE%\bin
  • Linux: Creates gitgo shell script in ~/.local/bin
  • Termux: Creates gitgo shell 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 update

🀝 Contributing

We welcome contributions from the community! Here's how you can help:

🌟 Ways to Contribute

  • πŸ› 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

πŸ“‹ Contribution Process

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ‘₯ Collaborators

πŸš€ Meet the Team Behind GitGo

Huerte
Huerte

πŸ”— Profile
Venomous-pie
Venomous-pie

πŸ”— Profile

Special thanks to our collaborators for their dedication and expertise in creating this powerful Git automation tool.


πŸ“„ License

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.

πŸ†˜ Support

Need Help? We've Got You Covered!

If you encounter any issues or have questions:

πŸ“ž Support Channels

  1. πŸ“š Documentation - Check this README and inline help (gitgo help)
  2. πŸ› GitHub Issues - Open an issue for bugs or feature requests
  3. πŸ’¬ Discussions - Join our GitHub Discussions
  4. πŸ“§ Direct Contact - Reach out to the maintainers

πŸ” Troubleshooting

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 terminal

Linux:

# 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 ~/.bashrc

Termux:

# If gitgo command not found:
cd ~/GitGo
./install.sh

# Verify installation:
which gitgo
gitgo -r

⭐ Star this repository if GitGo helped streamline your workflow!

Made with ❀️ by the GitGo Team

⬆ Back to Top

About

An automation tools use to achieve ease in using git. This is a solution to our problem.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •