Expand description
Git operations module.
This module provides a comprehensive set of git operations for Ralph, organized into focused submodules:
error: Error types and classificationstatus: Status parsing and path trackinglfs: Git LFS detection and validationcommit: Commit and push operationsclean: Repository cleanliness validation
§Invariants
- All operations use
-c core.fsmonitor=falseto avoid fsmonitor issues - Error types are Send + Sync for anyhow compatibility
- LFS operations gracefully handle repositories without LFS
§What this does NOT handle
- General file system operations (use std::fs or anyhow)
- Non-git version control systems
Re-exports§
pub use clean::RALPH_RUN_CLEAN_ALLOWED_PATHS;pub use clean::repo_dirty_only_allowed_paths;pub use clean::require_clean_repo_ignoring_paths;pub use commit::abort_rebase;pub use commit::add_paths_force;pub use commit::commit_all;pub use commit::fetch_branch;pub use commit::is_ahead_of_upstream;pub use commit::is_behind_upstream;pub use commit::list_conflict_files;pub use commit::push_current_branch;pub use commit::push_head_to_branch;pub use commit::push_upstream;pub use commit::push_upstream_allow_create;pub use commit::push_upstream_with_rebase;pub use commit::rebase_onto;pub use commit::restore_tracked_paths_to_head;pub use commit::revert_uncommitted;pub use commit::upstream_ref;pub use error::GitError;pub use lfs::check_lfs_health;pub use lfs::filter_modified_lfs_files;pub use lfs::has_lfs;pub use lfs::list_lfs_files;pub use status::ensure_paths_unchanged;pub use status::ignored_paths;pub use status::is_path_ignored;pub use status::snapshot_paths;pub use status::status_paths;pub use status::status_porcelain;
Modules§
- branch
- Git branch helpers for resolving the current branch name.
- clean
- Repository cleanliness validation.
- commit
- Git commit and push operations.
- error
- Git-related error types and error classification.
- issue
- GitHub Issue helpers using the
ghCLI. - lfs
- Git LFS (Large File Storage) operations and validation.
- pr
- GitHub PR helpers using the
ghCLI. - status
- Git status and porcelain parsing operations.
- workspace
- Git workspace helpers for parallel task isolation (clone-based).