git_policy_cli/conflict/mod.rs
1//! What:
2//! Conflict handling around commits and checkouts:
3//! side flags,
4//! saved copies of conflicted files and leftover markers.
5//! Why:
6//! These modules answer one question,
7//! what happens to a file that has conflict state.
8//!
9//! In TS you'd write (pseudocode):
10//! ```ts
11//! // conflict/index.ts: one `export * from './file'` per module below.
12//! ```
13
14/// The `checkout` and `restore` command lines that take one side of a conflicted file.
15pub mod command_conflict_side;
16
17/// Finding and copying the file a conflict-side command replaces.
18pub mod conflict_side_source;
19
20/// The operation in progress and the conflicted paths.
21pub mod conflict_side_state;
22
23/// Whether every token of a command line names a conflicted file.
24pub mod conflict_side_decision;
25
26/// The pathspec modes and magic of a conflict-side line.
27pub mod conflict_side_modes;
28
29/// The notices of a conflict-side command.
30pub mod conflict_side_notice;
31
32/// The saved copy of each file a conflict-side command replaces.
33pub mod conflict_sides;
34
35/// The linked-worktree policy's carve-out for conflicted files during a merge, rebase, cherry-pick or revert.
36pub mod conflict_side_guard;
37
38/// The append-only record of every command form that can discard uncommitted state.
39pub mod discard_audit;
40
41/// The `discardedCopies` section of `cli-git.config.jsonc`.
42pub mod config_discarded;
43
44/// The bound on the folder of saved copies of conflicted files: age, size, audit and doctor report.
45pub mod discarded_prune;
46
47/// The folder of saved copies opened once without following a link, with every read and removal addressed through descriptors.
48pub mod discarded_store;
49
50/// The marker lines a committed file still holds, and the line about an operation a commit left open.
51pub mod conflict_markers;
52
53/// The stash and conflict stages Git's apply of an autostash left in the commit's scratch repository, carried back.
54pub mod autostash_carry;