Skip to content

feat(rust): add peer autosync service for non-bare repos#203

Draft
rrvsh wants to merge 1 commit intoprimefrom
feat/git-peer-sync-autosync
Draft

feat(rust): add peer autosync service for non-bare repos#203
rrvsh wants to merge 1 commit intoprimefrom
feat/git-peer-sync-autosync

Conversation

@rrvsh
Copy link
Owner

@rrvsh rrvsh commented Feb 21, 2026

Summary

  • add a new git-peer-sync Rust crate that watches a repository, auto-commits local changes, and syncs peers via pull --rebase + push
  • implement rebase conflict handling that writes a MERGE_CONFLICT file with pull stderr, unmerged files, status, and conflict diff summary
  • package the tool in Nix as packages.git-peer-sync with wrapped runtime dependencies (git, openssh) and sandbox test support
  • include crate tests that validate push/pull behavior against non-bare repos and conflict-file creation

Verification

  • cargo test --manifest-path rs/Cargo.toml -p git-peer-sync
  • cargo clippy --manifest-path rs/Cargo.toml -p git-peer-sync --all-targets
  • nix build .#git-peer-sync
  • manual temp-dir runs of sync-once for both successful sync and rebase-conflict paths

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant