Skip to content

Report usage more consistently as "git foo" - #1277

Merged
spacewander merged 2 commits into
tj:mainfrom
sparr:consistent-usage-naming
Oct 8, 2026
Merged

spacewander merged 2 commits into
tj:mainfrom
sparr:consistent-usage-naming

Conversation

@sparr

@sparr sparr commented Sep 30, 2026 •

Copy link
Copy Markdown
Contributor

Report usage as git foo in more places, instead of the current mix of git foo, git-foo, and /whatever/git-foo.

This is the easy half of #1154, all the sites that can be reached with a straightforward text substitution. The remaining work involves some script parameter parsing or more complex invocations of setup/usage functions.

This PR updates 5 scripts and 65 man pages.

The man pages were updated directly, rather than re-generated, because many were generated with very old ronn versions and re-generating them now causes thousands of lines of churn.

AI Disclosure This PR was implemented mostly by Claude Opus 5 and 5.5. I have reviewed the changes and understand what they are doing and why.

@hyperupcall
hyperupcall self-requested a review September 30, 2026 21:17

@hyperupcall hyperupcall left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I appreciate the AI disclosure - I do prefer this approach as well (mentioned in #1154). Changes LGTM.

sparr and others added 2 commits October 2, 2026 09:12
git-force-clone, git-guilt, and git-magic spelled the command as
"git-foo" in their usage strings. git-changelog and git-clear set
PROGNAME to "git-changelog" and "git-clear" and interpolate it into
their usage text; PROGNAME is used nowhere else in either script.

Man page synopses for these commands remain inconsistent and are
unchanged here.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Follow the convention in git-clone(1): the dashed form "git-clone"
appears only on the NAME line, while the SYNOPSIS, the prose, and the
examples all spell the invocation "git clone". References to other
manual pages stay dashed and keep their section, as in "git-config(1)".

Applied here as:

  - NAME lines unchanged.
  - SYNOPSIS blocks now spell the command "git foo". git-force-clone
    had omitted "git" altogether.
  - Prose and example invocations now spell the command "git foo".
  - Existing "git-foo(1)" cross-references unchanged.

Left dashed because they are not invocations: file paths such as
bin/git-browse and man/git-magic.md, URLs, the git-extras.default-branch
config key, branch names in git-brv and git-guilt examples, and command
names quoted inside sample command output.

The generated man/*.1 and man/*.html carry the same edits, applied in
place rather than by regenerating. Regenerating would have rewritten
every page, because 40 of the 78 were built by Ronn v0.7.3, which cannot
be installed on current Ruby: it needs hpricot 0.8.6, whose fast_xs.c
does not compile against the Ruby 3.4 C API, and Ronn-NG v0.7.4 fails
the same way via rdiscount 1.6.8. Building those with a newer generator
replaced their whole body, since it drops v0.7.3's stray "." lines and
renders bullet lists as .IP rather than .br. Editing in place leaves
each page's generator, date, and formatting untouched.

Eight pages already used the "git foo" form and are untouched.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@sparr
sparr force-pushed the consistent-usage-naming branch from 73b06e6 to 6dd6bb3 Compare October 2, 2026 13:32
@hyperupcall

Copy link
Copy Markdown
Collaborator

Hey please don't force-push in the future, that makes it more difficult to review, we prefer merging as stated in the pull request template.

@spacewander
spacewander merged commit ee43f43 into tj:main Oct 8, 2026
5 checks passed
@spacewander

Copy link
Copy Markdown
Collaborator

@sparr
Merged. Thanks!

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.

3 participants