git-monitor: Passively snapshots working tree changes efficiently.

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]

A utility that passively monitors your Git working tree and periodically creates snapshot commits of any changes. This is useful for creating a detailed history of your work during development sessions, allowing you to recover any intermediate state. Run git monitor in your project directory before starting work, and snapshots will be saved to refs/snapshots/refs/heads/$BRANCH. Supports both regular Git repositories and Git worktrees.


[Skip to Readme]

Properties

Versions 1.0.0, 1.0.1, 1.1.0, 1.3.0, 1.3.1, 1.3.2, 1.4.0, 2.0.0.0, 2.0.1.0, 2.0.1.1, 2.0.2.0, 2.1.0.0, 3.0.0, 3.0.1, 3.1.1, 3.1.1.1, 3.1.1.2, 3.1.1.3, 3.1.1.4, 3.1.1.5, 3.2.1, 3.2.2, 3.2.2
Change log None available
Dependencies base (>=4 && <5), bytestring (>=0.9.2.1 && <0.13), containers (>=0.4.2.1 && <0.8), directory (>=1.1.0.2 && <1.4), filepath (>=1.3.0.0 && <1.6), gitlib (>=3.3.0 && <4), gitlib-libgit2 (>=3.3.0 && <4), logging (>=1.3.0 && <4), old-locale (>=1.0.0.4 && <1.1), optparse-applicative (>=0.10 && <0.19), shelly (>=0.14 && <1.13), tagged (>=0.4.5 && <0.9), template-haskell (>=2.7 && <2.23), text (>=0.11.2 && <2.2), time (>=1.4 && <1.15), transformers (>=0.3.0.0 && <0.7), unix (>=2.5 && <2.9), unordered-containers (>=0.2.3.0 && <0.3) [details]
License BSD-3-Clause
Author John Wiegley
Maintainer John Wiegley <johnw@newartisans.com>
Category Development
Home page http://github.com/jwiegley/gitlib
Source repo head: git clone https://github.com/jwiegley/gitlib
Uploaded by JohnWiegley at 2025-12-12T23:32:39Z

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


Readme for git-monitor-3.2.2

[back to package description]

git-monitor

Passively snapshots working tree changes efficiently.

Building

This package is part of the gitlib multi-package repository. Build from the repository root:

# From the gitlib repository root
nix build    # Builds git-monitor (default package)

Or from this directory:

# From git-monitor directory
nix build ../#default

Development

For development with direnv:

# From git-monitor directory
direnv allow  # The .envrc file loads the parent flake

Or manually enter the development shell:

nix develop ../#default

Dependencies

All dependencies are managed at the repository root level via the main flake.nix and cabal.project files.