pub const NO_PATHSPEC_MESSAGE: &str = "cli-git: git commit requires an explicit pathspec when commit-only enforcement is active. \
Name the paths in the commit command (for example, git commit -m <msg> <path>), \
pass --pathspec-from-file, pass --no-only to commit the entire index, \
or pass --no-enforce-only to bypass for this invocation.";
pub const ALL_FLAG_MESSAGE: &str = "cli-git: git commit rejects -a/--all because it stages every tracked modification before committing. \
Stage paths explicitly and commit with git commit -m <msg> <path>, \
or pass --no-enforce-only to bypass for this invocation.";
pub fn ignored_index_message(flag_text: &str) -> String {
return format!(
"cli-git: git commit {flag_text} without pathspecs would silently ignore your staged changes. \
Commit-only enforcement injects --only, and a pathless --only commit reuses HEAD's existing tree, \
leaving staged changes staged with no warning; the index currently differs from HEAD. \
Choose explicitly: name the paths to include them (git commit --amend <path>), \
pass --only to proceed without them, \
or pass --no-only to commit the entire index."
);
}