Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ Distributed Git Orchestrator (DGO) - Multi-Repository Workflow Management

Intelligent Multi-Repository Orchestration Tool with Optional AI, Security, Analytics & Cloud Integration

Python License Lines

A multi-repository Git orchestration tool that helps manage multiple Git repositories simultaneously. Built with optional AI, Security, Analytics & Cloud Integration features in exactly 250 lines of code.

πŸ“– Documentation | πŸ› Report Issues | πŸ’‘ Feature Requests

⚠️ Important: This tool is run as a Python script. Use python distributed_git_orchestrator.py <command>.


🌟 Overview

Distributed Git Orchestrator (DGO) is a multi-repository orchestration tool that helps development teams manage multiple Git repositories simultaneously. It provides basic Git operations across multiple repositories with optional advanced features.

✨ Core Features

  • πŸ”„ Multi-Repository Operations: Basic Git operations across multiple repositories
  • πŸ“Š Repository Discovery: Automatic detection of Git repositories in workspace
  • ⚑ Concurrent Processing: Thread-based parallel operations for better performance
  • 🎯 Git-Native CLI: Familiar Git-like commands for multi-repository operations
  • πŸ“ Workspace Management: Centralized configuration and state management

πŸ”§ Optional Features (Require Additional Dependencies)

  • πŸ€– AI-Powered Intelligence: GPT-2 integration for commit message generation (optional)
  • πŸ”’ Security Scanning: Basic vulnerability detection (optional)
  • πŸ“Š Analytics: System performance monitoring (optional)
  • ☁️ Cloud Integration: Docker deployment support (optional)
  • πŸ›‘οΈ Compliance Checking: Basic repository compliance validation

πŸ—οΈ Problem Statement

Multi-Repository Management Challenges

Development teams working with multiple Git repositories face several common challenges:

❌ Common Issues:
β”œβ”€β”€ Manual coordination across multiple repositories
β”œβ”€β”€ Inconsistent Git operations across projects
β”œβ”€β”€ Time-consuming status checking across repos
β”œβ”€β”€ Lack of centralized repository management
└── Difficulty in maintaining consistency

βœ… DGO Solution:
β”œβ”€β”€ Centralized multi-repository operations
β”œβ”€β”€ Consistent Git commands across all repos
β”œβ”€β”€ Automated repository discovery and management
β”œβ”€β”€ Concurrent operations for better performance
└── Simple CLI interface for complex operations

Use Cases

  • Microservices Development: Managing multiple service repositories
  • Monorepo Alternatives: Coordinating related but separate projects
  • Team Workflows: Standardizing Git operations across team projects
  • CI/CD Integration: Automated multi-repository operations in pipelines

🎯 Benefits

πŸ’‘ Key Advantages

Simplified Multi-Repository Management:

βœ… Centralized Operations: Single command for multiple repositories
βœ… Consistent Workflows: Standardized Git operations across projects
βœ… Time Savings: Reduced manual coordination overhead
βœ… Better Organization: Clear visibility into repository status
βœ… Automation Ready: Easy integration with CI/CD pipelines

πŸš€ Practical Benefits

  • Reduced Manual Work: Automate repetitive Git operations across multiple repos
  • Consistent Operations: Ensure all repositories follow the same Git workflow
  • Better Visibility: Quick overview of all repository statuses
  • Team Efficiency: Standardize multi-repository operations across team
  • CI/CD Integration: Easy automation of multi-repo operations in pipelines

🎨 Features & Capabilities

πŸ”„ Core Multi-Repository Operations

# Initialize workspace and discover repositories
python distributed_git_orchestrator.py init ./workspace

# Check status of all repositories
python distributed_git_orchestrator.py status

# Create branches across all repositories
python distributed_git_orchestrator.py branch feature/new-feature

# Commit changes across repositories with changes
python distributed_git_orchestrator.py commit "Implement new feature"

# Merge branches across repositories
python distributed_git_orchestrator.py merge develop main

Core Features:

  • Repository discovery and validation
  • Concurrent status checking across multiple repos
  • Coordinated branching and merging
  • Basic commit operations with rollback safety

πŸ”§ Optional Advanced Features

AI-Powered Intelligence (Optional)

# Enhanced commit messages with AI (requires transformers)
python distributed_git_orchestrator.py commit "Implement new feature"  # May enhance with AI if available

AI Features (Optional):

  • GPT-2 integration for commit message generation
  • Basic conflict prediction using machine learning
  • Requires: transformers, sentence-transformers

Security Scanning (Optional)

# Security scan results included in status
python distributed_git_orchestrator.py status  # Shows security issues if available

Security Features (Optional):

  • Basic vulnerability detection in Python files
  • Common security issue detection
  • Requires: bandit, safety, cryptography

Analytics & Monitoring (Optional)

# System performance and repository metrics
python distributed_git_orchestrator.py analytics

Analytics Features (Optional):

  • System performance monitoring
  • Repository operation tracking
  • Prometheus metrics integration
  • Requires: prometheus-client, psutil

Cloud Integration (Optional)

# Deploy with Docker support
python distributed_git_orchestrator.py deploy production

Cloud Features (Optional):

  • Docker deployment support
  • Webhook integration for CI/CD
  • Requires: docker, requests, yaml

Compliance Checking

# Check repository compliance
python distributed_git_orchestrator.py compliance

Compliance Features:

  • Basic repository health validation
  • Required file checking (LICENSE, README.md, .gitignore, requirements.txt)
  • No additional dependencies required

πŸš€ Quick Start & Installation

Prerequisites

  • Python 3.8+
  • Git (for repository operations)
  • Multiple Git repositories in your workspace

Installation

Option 1: Install from Source

# Clone or download the repository
git clone https://github.com/your-org/distributed-git-orchestrator.git
cd distributed-git-orchestrator

# Install core dependencies
pip install -r requirements.txt

# Optional: Install enhanced features
pip install -e .[enhanced]

Option 2: Manual Installation

# Install core dependencies
pip install GitPython rich click scikit-learn numpy

# Optional: Install AI/ML features
pip install transformers sentence-transformers

# Optional: Install security features
pip install bandit safety cryptography

# Optional: Install analytics features
pip install prometheus-client psutil

# Optional: Install cloud features
pip install docker requests pyyaml

# Copy distributed_git_orchestrator.py to your project

Basic Usage

Quick Start:

# 1. Initialize workspace (creates .dgo directory)
python distributed_git_orchestrator.py init .

# 2. Check repository status
python distributed_git_orchestrator.py status

# 3. Create branches across all repos
python distributed_git_orchestrator.py branch feature/new-feature

# 4. Commit changes across repositories with changes
python distributed_git_orchestrator.py commit "Implement new feature"

# 5. Merge branches across repositories
python distributed_git_orchestrator.py merge develop main

# 6. Check compliance across all repositories
python distributed_git_orchestrator.py compliance

# Optional: Show analytics (if dependencies installed)
python distributed_git_orchestrator.py analytics

# Optional: Deploy with cloud integration (if dependencies installed)
python distributed_git_orchestrator.py deploy dev

Note: Always use python distributed_git_orchestrator.py - the dgo command is not available.


πŸ“‹ CLI Commands Reference

Core Commands

# Initialize DGO workspace with repository discovery
python distributed_git_orchestrator.py init <workspace-path>

# Show status of all discovered repositories with security scanning
python distributed_git_orchestrator.py status

# Show productivity analytics and performance insights
python distributed_git_orchestrator.py analytics

# Show compliance report and audit trail analysis
python distributed_git_orchestrator.py compliance

# Create coordinated branches across all repositories
python distributed_git_orchestrator.py branch <branch-name>

# Atomic commit with consistency guarantees
python distributed_git_orchestrator.py commit <message>

# Coordinated merge across repositories
python distributed_git_orchestrator.py merge <source-branch> <target-branch>

# Cloud deployment with webhook automation
python distributed_git_orchestrator.py deploy <environment>

Advanced Usage Examples

Microservices Architecture Coordination

# Initialize complex microservices workspace
python distributed_git_orchestrator.py init ./microservices

# Show current repository status and analytics
python distributed_git_orchestrator.py status
python distributed_git_orchestrator.py analytics

# Create feature branch across all services
python distributed_git_orchestrator.py branch feature/user-preferences

# Atomic commit ensuring API contract consistency
python distributed_git_orchestrator.py commit "Implement user preference API v2"

# Check compliance and audit trails
python distributed_git_orchestrator.py compliance

# Deploy with guaranteed consistency
python distributed_git_orchestrator.py deploy production

Enterprise Development Workflow

# Initialize enterprise workspace with multiple repositories
python distributed_git_orchestrator.py init .

# Monitor team productivity and performance
python distributed_git_orchestrator.py analytics

# Generate compliance reports for regulatory requirements
python distributed_git_orchestrator.py compliance

# Perform coordinated operations with audit logging
python distributed_git_orchestrator.py branch feature/security-update

# Apply changes with security scanning
python distributed_git_orchestrator.py commit "Security patch: CVE-2024-12345 mitigation"
python distributed_git_orchestrator.py merge feature/security-update main

πŸ—οΈ Technical Architecture

Core Architecture

The DGO system is implemented in a single EnhancedDGO class with exactly 250 lines of code:

class EnhancedDGO:
    def __init__(self, wp=None):
        self.wp, self.c = wp or os.getcwd(), Console()
        self.ex, self.cache = ThreadPoolExecutor(max_workers=min(32, os.cpu_count() or 4)), {}
        self.cm = RandomForestClassifier(n_estimators=50, random_state=42)
        self.ai_system = self._init_ai_system()      # Optional AI features
        self.security = self._init_security()        # Optional security features
        self.metrics = self._init_metrics()          # Optional analytics
        self.cloud = self._init_cloud()              # Optional cloud features
        self.automation = self._init_automation()    # Optional automation
        self.advanced_ai = self._init_advanced_ai()  # Optional advanced AI

Core Methods

Repository Management:

  • find_repos() - Discovers Git repositories with caching
  • check_repo() - Validates individual repository status
  • status_cmd() - Displays repository status in terminal

Git Operations:

  • prep_commit() - Identifies repositories with changes
  • do_commit() - Commits changes with basic rollback
  • make_branch() - Creates branches across repositories
  • merge() - Basic merge operations

Optional Features:

  • security_scan() - Basic security scanning (optional)
  • analytics_cmd() - System performance monitoring (optional)
  • cloud_deploy() - Docker deployment (optional)
  • compliance_cmd() - Repository compliance checking

Dependencies

Library Purpose Required
GitPython Git operations βœ… Core
Rich Terminal UI βœ… Core
Click CLI framework βœ… Core
Scikit-learn ML features βœ… Core
Transformers AI features ❌ Optional
Bandit/Safety Security scanning ❌ Optional
Prometheus Analytics ❌ Optional
Docker Cloud integration ❌ Optional

πŸ“Š Performance & Capabilities

⚑ Performance Characteristics

Repository Operations:

  • Discovery: Basic caching with 5-minute TTL for repository scanning
  • Status Checking: Concurrent validation using ThreadPoolExecutor
  • Git Operations: Basic commit, branch, and merge operations
  • Concurrent Processing: Thread-based parallel operations for better performance

Optional Features:

  • Analytics: Basic system performance monitoring (if dependencies installed)
  • Security Scanning: Simple vulnerability detection (if dependencies installed)
  • Cloud Integration: Docker deployment support (if dependencies installed)

πŸ§ͺ Current Status

Core Functionality:

  • βœ… Repository Discovery - Automatic Git repository detection
  • βœ… Status Checking - Multi-repository status display
  • βœ… Basic Git Operations - Commit, branch, merge operations
  • βœ… CLI Interface - Command-line interface with 8 commands
  • βœ… Concurrent Processing - Thread-based parallel operations

Optional Features:

  • ⚠️ AI Features - Requires additional dependencies
  • ⚠️ Security Scanning - Requires additional dependencies
  • ⚠️ Analytics - Requires additional dependencies
  • ⚠️ Cloud Integration - Requires additional dependencies

πŸ”§ Configuration

Workspace Configuration

The tool automatically creates a .dgo directory with basic configuration:

{
  "r": ["repo1", "repo2", "repo3"],
  "t": "2025-01-27T10:30:00.000000"
}

Environment Variables

# Optional configuration
DEBUG=False
LOG_LEVEL=WARNING

πŸ“ˆ Usage Examples

Basic Workflow

# 1. Initialize workspace
python distributed_git_orchestrator.py init ./my-workspace

# 2. Check status of all repositories
python distributed_git_orchestrator.py status

# 3. Create feature branch across all repos
python distributed_git_orchestrator.py branch feature/new-feature

# 4. Make changes in repositories, then commit
python distributed_git_orchestrator.py commit "Implement new feature"

# 5. Merge feature branch
python distributed_git_orchestrator.py merge feature/new-feature main

CI/CD Integration

# Use in CI/CD pipelines
python distributed_git_orchestrator.py init .
python distributed_git_orchestrator.py branch "ci/$(date +%Y%m%d_%H%M%S)"
python distributed_git_orchestrator.py commit "Automated deployment"

πŸ† Project Status

Current Version: 2.0.0 (Beta)

Core Features:

  • Multi-repository Git operations
  • Concurrent processing
  • Basic CLI interface
  • Optional advanced features

Development Status:

  • βœ… Core functionality implemented
  • ⚠️ Optional features require additional dependencies
  • πŸ”„ Active development and improvement

🀝 Contributing

Getting Started

# Fork and clone
git clone https://github.com/your-org/distributed-git-orchestrator.git
cd distributed-git-orchestrator

# Set up development environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
pip install -r requirements.txt

# Start developing!

Development Guidelines

  • Code Style: Follow PEP 8
  • Testing: Test new features before submitting
  • Documentation: Update README for significant changes
  • Issues: Report bugs and request features via GitHub Issues

πŸ“œ License & Support

License

MIT License - See LICENSE file for details
Free for commercial and personal use.

🌟 About

Distributed Git Orchestrator (DGO) is a multi-repository Git management tool that helps development teams coordinate operations across multiple Git repositories. Built with Python and designed for simplicity and efficiency.

⭐ Star this project | 🍴 Fork it | πŸ“’ Share it


Built with ❀️ for the development community

About

Multi-repository Git orchestration tool with optional AI, security scanning, analytics & cloud integration. Manage multiple repos with single commands.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages