A comprehensive collection of PowerShell scripts and utilities for managing GitHub repositories, authentication, and synchronization across multiple devices.
repo-management-tools/
βββ sync-scripts/ # GitHub repository synchronization automation
βββ auth-setup/ # SSH and authentication configuration
βββ docs/ # Documentation and frameworks
βββ config/ # Configuration templates
βββ README.md # This file
Located in sync-scripts/
Primary sync solution - Universal GitHub repository synchronization
- Auto-discovers ALL your GitHub repositories
- Clones missing repositories
- Pulls latest changes from all repos
- Commits and pushes local changes
- Works on Windows, Linux, macOS
Usage:
.\ultimate-github-sync.ps1 -Mode Sync # Full sync operation
.\ultimate-github-sync.ps1 -Mode Status # Check status only
.\ultimate-github-sync.ps1 -Mode Clone # Clone missing repos
.\ultimate-github-sync.ps1 -Force # Skip confirmationsAuto-discovery GitHub sync with network location support
- Discovers and connects to travel servers
- Works with multiple network locations
- Supports local-only mode
Usage:
.\auto-sync.ps1 -Sync # Sync with discovered server
.\auto-sync.ps1 -LocalOnly # Local operations only
.\auto-sync.ps1 -Discover # Discover available serversEnhanced version with safety checks and validation
Automated cloning and synchronization workflow
Advanced auto-sync with additional features
Full-featured synchronization with comprehensive reporting
Local repository synchronization without remote operations
Quick status check across all repositories
- Shows uncommitted changes
- Lists unpushed commits
- Displays branch information
Usage:
.\check-repo-status.ps1Installs scheduled task for automatic GitHub synchronization
Usage:
.\install-github-sync-task.ps1Tests the installed sync task configuration
Located in auth-setup/
Configures SSH for passwordless GitHub authentication
- Generates ED25519 SSH keys
- Configures SSH for GitHub
- Tests connection
Usage:
.\Setup-PasswordlessAuth.ps1 -Install # Set up passwordless auth
.\Setup-PasswordlessAuth.ps1 -ShowKey # Display public key
.\Setup-PasswordlessAuth.ps1 -Test # Test connectionVerifies SSH authentication is working correctly
Usage:
.\Verify-PasswordlessAuth.ps1Template SSH configuration file for reference
Located in docs/
Design documentation for the GitOS Desktop project
Implementation guide and technical details for GitOS Desktop
High-level summary of the GitOS Desktop system
Framework and guidelines for ethical AI development practices
Located in config/
VS Code workspace configuration for managing all repositories
-
Set up SSH authentication:
cd auth-setup .\Setup-PasswordlessAuth.ps1 -Install
-
Add your SSH key to GitHub:
.\Setup-PasswordlessAuth.ps1 -ShowKey
Copy the output and add to: https://github.com/settings/keys
-
Test authentication:
.\Verify-PasswordlessAuth.ps1 -
Sync all repositories:
cd ..\sync-scripts .\ultimate-github-sync.ps1 -Mode Sync -Force
Check repository status:
.\check-repo-status.ps1Sync all changes:
.\ultimate-github-sync.ps1 -Mode SyncInstall automatic sync:
.\install-github-sync-task.ps1- PowerShell 5.1 or higher (PowerShell 7+ recommended)
- Git installed and configured
- GitHub account with SSH key access
- OpenSSH client (Windows 10/11 built-in)
Most scripts use these default paths:
- Local Repos:
C:\Users\lr598\Proton Drive\lreyesr\My files\Repositories - GitHub User: LReyes21
- Server User: luis
- Server Repos:
/home/luis/repositories
Edit the configuration section at the top of each script to customize for your environment.
- All scripts are designed to work cross-platform (Windows/Linux/macOS)
- Scripts use
#!/usr/bin/env pwshshebang for compatibility - Most scripts support
-WhatIfand-Verboseparameters - Logs are typically written to console with timestamps
This is a personal utility collection. Feel free to adapt these scripts for your own use.
Personal use - adapt as needed for your workflows.
Last Updated: November 2025