1pub mod plumbing;
36pub mod porcelain;
37pub mod progress;
38
39pub mod prelude {
41 pub use crate::config::ConfigSet;
42 pub use crate::error::{Error, Result};
43 pub use crate::index::Index;
44 pub use crate::objects::{Object, ObjectId, ObjectKind};
45 pub use crate::odb::Odb;
46 pub use crate::repo::Repository;
47}
48
49pub mod object_store {
56 pub use crate::{
57 delta_encode, delta_islands, midx, objects, odb, pack, pack_geometry, pack_name_hash,
58 pack_rev, promisor, promisor_remote, prune_packed, unpack_objects,
59 };
60}
61
62pub mod references {
64 pub use crate::{
65 branch_ref_format, branch_tracking, check_ref_format, hide_refs, ref_exclusions,
66 ref_namespace, reflog, refs, refspec, reftable,
67 };
68}
69
70pub mod worktree_index {
72 pub use crate::{
73 attributes, crlf, ignore, index, index_name_hash_lazy, path_walk, resolve_undo,
74 sparse_checkout, split_index, untracked_cache, worktree, worktree_cwd, worktree_ref,
75 write_tree,
76 };
77}
78
79pub mod revision {
81 pub use crate::{commit_graph_file, commit_graph_write, name_rev, rev_list, rev_parse};
82}
83
84pub mod diffing {
86 pub use crate::{
87 bloom, combined_diff_patch, combined_tree_diff, diff, diff_indent_heuristic, diff_moved,
88 diffstat, difftool, line_log, patch_ids, userdiff,
89 };
90}
91
92pub mod merging {
94 pub use crate::{
95 fmt_merge_msg, merge_base, merge_diff, merge_file, merge_tree_trivial, merge_trees,
96 mergetool_vimdiff, rerere,
97 };
98}
99
100pub mod configuration {
102 pub use crate::{
103 config, dotfile, gitmodules, ident, ident_config, ident_resolve, precompose_config,
104 url_rewrite,
105 };
106}
107
108pub mod am;
109pub mod apply;
110pub mod attributes;
111pub mod blame;
112pub mod bloom;
113pub mod branch_ref_format;
114pub mod branch_tracking;
115pub mod check_ref_format;
116pub mod combined_diff_patch;
117pub mod combined_tree_diff;
118pub mod commit;
119pub mod commit_encoding;
120pub mod commit_graph_file;
121pub mod commit_graph_write;
122pub mod commit_pretty;
123pub mod commit_trailers;
124pub mod config;
125pub mod connectivity;
126pub mod credentials;
127pub mod crlf;
128pub mod delta_encode;
129pub mod delta_islands;
130pub mod diff;
131pub mod diff_indent_heuristic;
132pub mod diff_moved;
133pub mod diffstat;
134pub mod difftool;
135pub mod dotfile;
136pub mod error;
137mod ewah_bitmap;
138pub mod fast_export;
139pub mod fast_import;
140pub mod fetch;
141pub mod fetch_head;
142pub mod fetch_negotiator;
143pub mod fetch_submodules;
144pub mod filter_process;
145pub mod fmt_merge_msg;
146pub mod fsck_standalone;
147pub mod gc;
148pub mod git_binary_base85;
149pub mod git_column;
150pub mod git_date;
151pub mod git_path;
152pub mod gitmodules;
153pub mod hide_refs;
154pub mod hooks;
155pub mod ident;
156pub mod ident_config;
157pub mod ident_resolve;
158pub mod ignore;
159pub mod index;
160pub mod index_name_hash_lazy;
161pub mod interpret_trailers;
162pub mod line_log;
163pub mod ls_remote;
164pub mod mailinfo;
165pub mod mailmap;
166pub mod merge_base;
167pub mod merge_diff;
168pub mod merge_file;
169pub mod merge_tree_trivial;
170pub mod merge_trees;
171pub mod mergetool_vimdiff;
172pub mod midx;
173pub mod name_rev;
174pub mod notes;
175pub mod objects;
176pub mod odb;
177pub mod pack;
178pub mod pack_geometry;
179pub mod pack_name_hash;
180pub mod pack_rev;
181#[cfg(feature = "test-tools")]
182pub mod parse_options_test_tool;
183pub mod patch_ids;
184pub mod path_walk;
185pub mod pathspec;
186pub mod pkt_line;
187pub mod precompose_config;
188pub mod promisor;
189pub mod promisor_remote;
190pub mod protocol;
191pub mod protocol_v2;
192pub mod prune_packed;
193pub mod push;
194pub mod push_cert;
195pub mod push_report;
196pub mod push_submodules;
197pub mod quote_path;
198pub mod receive_pack;
199pub mod ref_exclusions;
200pub mod ref_namespace;
201pub mod reflog;
202pub mod refs;
203pub mod refs_fsck;
204pub mod refspec;
205pub mod reftable;
206pub mod repo;
207pub mod rerere;
208pub mod resolve_undo;
209pub mod rev_list;
210pub mod rev_parse;
211pub mod shallow;
212pub mod shared_repo;
213pub mod signing;
214#[cfg(unix)]
215pub mod simple_ipc;
216pub mod sparse_checkout;
217pub mod split_index;
218pub mod unicode_normalization;
219pub mod untracked_cache;
220pub mod upload_filter;
221#[cfg(not(unix))]
222pub mod simple_ipc {
223 #[must_use]
225 pub fn supports_simple_ipc() -> bool {
226 false
227 }
228
229 pub fn run_simple_ipc_tool(_args: &[String]) -> i32 {
231 eprintln!("simple IPC not available on this platform");
232 1
233 }
234}
235pub mod state;
236pub mod stripspace;
237pub mod submodule_active;
238pub mod submodule_config;
239pub mod submodule_config_cache;
240pub mod submodule_gitdir;
241pub mod tab_expand;
242#[cfg(feature = "test-tools")]
243pub mod test_tool_progress;
244pub mod textconv_cache;
245pub mod transfer;
246pub mod transport;
247pub mod transport_path;
248pub mod tree_path_follow;
249#[cfg(unix)]
250pub mod unix_process;
251pub mod unpack_objects;
252pub mod url_rewrite;
253pub mod userdiff;
254pub mod whitespace_rule;
255pub mod wildmatch;
256pub mod worktree;
257pub mod worktree_cwd;
258pub mod worktree_ref;
259pub mod write_tree;
260pub mod ws;