Skip to content

strabo231/gitbackup

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Test GitBackup

GitBackup - Automated Git Repository Backup Manager

Never lose your code again! GitBackup automatically discovers and backs up all your git repositories with one command.

Why GitBackup?

Every developer's nightmare: "My hard drive died and I lost 3 months of work."

  • 🔍 Auto-discovers all git repos
  • 💾 One-command backups to external drives
  • Incremental - only backup what changed
  • ⚠️ Detects uncommitted changes
  • 📦 Compression - save space
  • 📊 Status tracking
  • 📝 Backup logs

Installation

curl -sSL https://raw.githubusercontent.com/strabo231/gitbackup/main/install.sh | bash

Quick Start

# Scan your projects
gitbackup scan ~/Projects ~/Work

# See what was found
gitbackup list

# Backup to external drive
gitbackup backup -d /media/backup --compress

# Check status
gitbackup status

Commands

Scan for repos:

gitbackup scan ~/Projects

List tracked repos:

gitbackup list

Backup all repos:

gitbackup backup -d /media/backup --compress
gitbackup backup -d /media/backup --incremental  # Only changed repos

Check status:

gitbackup status  # Shows uncommitted changes, etc.

Restore:

gitbackup restore /media/backup/myproject.tar.gz ~/restored

View history:

gitbackup log

Use Cases

Daily backup:

gitbackup backup -d /media/usb --incremental

Weekly full backup:

gitbackup backup -d /mnt/nas/backups --compress

Setup cron:

# Daily at 6 PM
crontab -e
0 18 * * * gitbackup backup -d /media/backup --incremental

Features

✅ Auto-discovers git repos recursively
✅ Detects uncommitted work
✅ Incremental backups (only changed repos)
✅ Compressed archives (.tar.gz)
✅ Smart filtering (skips node_modules, venv, etc.)
✅ Backup logs with timestamps
✅ Restore from backups
✅ Status overview

Command Reference

scan <dir>              Find git repos
list                    List tracked repos
backup -d <dest>        Backup all repos
  --compress            Create .tar.gz
  --incremental         Only changed repos
  --exclude <pattern>   Skip matching repos
status                  Show repo states
restore <file> [dest]   Restore backup
log                     Show history

License

MIT License - see LICENSE

Author

Sean - @strabo231


Don't risk losing your work. Backup your repos today. 💾

About

Automated git repository backup manager - never lose your code again

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

No packages published

Languages