Skip to content

feat: support built-in log formats - #1179

Draft
liyimil wants to merge 1 commit into
steveukx:mainfrom
liyimil:agent/support-log-pretty-format
Draft

feat: support built-in log formats#1179
liyimil wants to merge 1 commit into
steveukx:mainfrom
liyimil:agent/support-log-pretty-format

Conversation

@liyimil

@liyimil liyimil commented Jul 18, 2026

Copy link
Copy Markdown

What changed

  • accept Git's oneline, short, medium, full, and fuller log format presets
  • map each preset to structured result fields
  • expose format-aware TypeScript return types
  • add a changeset and regression coverage for the fuller preset

Why

git.log({format: 'fuller'}) was previously treated like the default object format instead of the corresponding built-in Git pretty format. This adds the string shortcut while retaining the existing custom format object behavior.

Fixes #883.

Checks

  • yarn workspace simple-git jest --runInBand test/unit/log.spec.ts (43 tests passed)
  • yarn tsc -p simple-git/tsconfig.release.json --noEmit
  • Biome check for all changed files
  • git diff --check

The full suite also ran: 767 tests passed; 21 unrelated integration tests failed on Windows because they depend on POSIX shell commands/path separators, external clone authentication, or timing-sensitive process behavior.

Prepared with Codex assistance; the diff was reviewed and the checks above were run locally.

@changeset-bot

changeset-bot Bot commented Jul 18, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: f726f24

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
simple-git Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

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.

git.log should support single string format

1 participant