Skip to main content

Zero-config, language-agnostic Git snapshots via tags

Project description

Git Checkpoints

🔄 Zero-config, language-agnostic Git snapshots via tags.


🚀 Installation

Option 1: NPM Package (Recommended)

npm install -g git-checkpoints

Option 2: Python Package

pip install git-checkpoints

Option 3: Bash Script (One-Line Install)

curl -LsSf https://raw.githubusercontent.com/moussa-m/git-checkpoints/main/install.sh | bash

Both methods:

  • Install git-checkpoints into your PATH
  • Add git checkpoint / git checkpoints aliases in this repo
  • Schedule auto-snapshot every 5 minutes when changes exist (configurable)

❌ One-Line Uninstall

git-checkpoints uninstall

Removes the global CLI and all cron entries.


💻 Usage

Git aliases (in your repo)

git checkpoint [name]      # create a checkpoint
git checkpoints list       # list all checkpoints
git checkpoints delete *   # delete one or all
git checkpoints load <name># restore a checkpoint

Direct CLI

git-checkpoints create [name]
git-checkpoints list
git-checkpoints delete <name|*>
git-checkpoints load <name>
git-checkpoints auto
git-checkpoints pause              # pause auto-checkpointing
git-checkpoints resume             # resume auto-checkpointing
git-checkpoints config <get|set>   # manage configuration
git-checkpoints local-uninstall
git-checkpoints uninstall

⚙️ Configuration

Control auto-checkpointing behavior with the config command:

git-checkpoints config get                    # show all settings
git-checkpoints config get interval           # show current interval
git-checkpoints config get status             # show current status
git-checkpoints config set interval 10        # set interval to 10 minutes

Available options:

  • interval - Auto-checkpoint interval in minutes (default: 5)
  • status - Current status: paused or running

Examples:

# Set checkpoints every 15 minutes
git-checkpoints config set interval 15
git-checkpoints resume  # apply new interval

# Check current configuration
git-checkpoints config get
# Output:
# ℹ️ Current configuration:
#   interval: 15 minutes
#   status: running

🛠 Troubleshooting

  • git-checkpoints not found? Ensure your install dir (e.g. ~/.local/bin) is in $PATH.

  • No snapshots?

    • Check uncommitted changes: git status
    • Trigger one manually: git checkpoint
  • Cron not running?

    • Verify service: systemctl status cron
    • Check crontab: crontab -l | grep git-checkpoints

Enjoy effortless, zero-config backups of your work-in-progress!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

git_checkpoints-2.0.0.tar.gz (8.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

git_checkpoints-2.0.0-py3-none-any.whl (9.5 kB view details)

Uploaded Python 3

File details

Details for the file git_checkpoints-2.0.0.tar.gz.

File metadata

  • Download URL: git_checkpoints-2.0.0.tar.gz
  • Upload date:
  • Size: 8.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.9

File hashes

Hashes for git_checkpoints-2.0.0.tar.gz
Algorithm Hash digest
SHA256 328f8f50173fe9c5f46001437b2d582153740e6aa16a3a57ddd62fc685d0a144
MD5 eef64f7b5d50598b2b5bb0ff2e952172
BLAKE2b-256 0c0b1f96af637988e029f50e94d506e13f7df93117a5cbd8425d2fec3577d9ee

See more details on using hashes here.

File details

Details for the file git_checkpoints-2.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for git_checkpoints-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 02af8cb47099159d8d748e3e7146d2bbb462057290baf6e228edc08bb9d71f9b
MD5 a1eced7d709bdb9e46a755d27c58ab74
BLAKE2b-256 92117fdd8f99f2e9afa0b7f7566c45e47d3b5a9dd637fa92615ef7fedadba78b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page