gitbasher 4.0.0 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/README.md +40 -3
  3. package/dist/gitb +637 -111
  4. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -2,6 +2,27 @@
2
2
 
3
3
  All notable changes to gitbasher are generated automatically by [semantic-release](https://github.com/semantic-release/semantic-release) from [Conventional Commits](https://www.conventionalcommits.org/) on `main`. The project follows [Semantic Versioning](https://semver.org/).
4
4
 
5
+ ## [4.1.0](https://github.com/maxbolgarin/gitbasher/compare/v4.0.0...v4.1.0) (2026-05-29)
6
+
7
+ ### 🚀 Features
8
+
9
+ * **edit:** add `branch` mode to rename the current branch ([30cfd07](https://github.com/maxbolgarin/gitbasher/commit/30cfd071d49e73761f7853b8ca9643d0db50d9b4))
10
+ * **edit:** add `gitb edit` and retire the commit `last` action ([51d3ca2](https://github.com/maxbolgarin/gitbasher/commit/51d3ca2c6d1e41a7dac506d05723cb7469b7ce41))
11
+ * **edit:** add `pick` mode to reword any recent commit ([175cbd7](https://github.com/maxbolgarin/gitbasher/commit/175cbd73d29cb14c3f436b543b150b4e7cd6fd2d))
12
+ * **site:** add Astro marketing site for GitHub Pages ([df1c1eb](https://github.com/maxbolgarin/gitbasher/commit/df1c1eb3925bd73156abd87150638ac74d73f9df))
13
+ * **clone:** add gitb clone command ([ac377b2](https://github.com/maxbolgarin/gitbasher/commit/ac377b2e76378742289b632e117eca07bb3b09da))
14
+ * **commit:** allow push modifier on revert ([cdb86b4](https://github.com/maxbolgarin/gitbasher/commit/cdb86b4c643db3d4fc2c2a68f2e931670729d04c))
15
+ * **gitb:** allow running outside a git repository for global commands ([8eeeefe](https://github.com/maxbolgarin/gitbasher/commit/8eeeefef3839a43fd009cfa3f57f8ed6628fb259))
16
+ * **commit:** cap atomic split at a configurable number of scopes ([15103d8](https://github.com/maxbolgarin/gitbasher/commit/15103d8234a54d6b329b921b1d412cfa8b4598e3))
17
+ * **push:** retry transient network failures with exponential backoff ([80f8d32](https://github.com/maxbolgarin/gitbasher/commit/80f8d32709aaf5759689f48be6f75979cdf40fe0))
18
+ * **pull:** stream git fetch progress live during gitb pull ([92ed00d](https://github.com/maxbolgarin/gitbasher/commit/92ed00de9b8c4cc9ed954ad0d59a92c83361569c))
19
+
20
+ ### 🐛 Bug Fixes
21
+
22
+ * **gitb:** escape command substitution in macOS upgrade instructions ([f61db10](https://github.com/maxbolgarin/gitbasher/commit/f61db101c97527d101d6787e4b0aca625c8f55e5))
23
+ * **commit:** honor push modifier when amending ([f5d2664](https://github.com/maxbolgarin/gitbasher/commit/f5d26640ab4ded146fcf1231200e99a1ddb91e9a))
24
+ * **commit:** strip leading/trailing separators from auto scopes ([3fee1c8](https://github.com/maxbolgarin/gitbasher/commit/3fee1c8456ae6a171618efbbba87d81dfc5a9c6a))
25
+
5
26
  ## [4.0.0](https://github.com/maxbolgarin/gitbasher/compare/v3.10.2...v4.0.0) (2026-05-04)
6
27
 
7
28
  ### ⚠ BREAKING CHANGES
package/README.md CHANGED
@@ -10,6 +10,13 @@
10
10
  <a href="https://github.com/maxbolgarin/gitbasher/actions"><img src="https://github.com/maxbolgarin/gitbasher/actions/workflows/build.yml/badge.svg" alt="Build Status"></a>
11
11
  </p>
12
12
 
13
+ <p align="center">
14
+ <a href="https://maxbolgarin.github.io/gitbasher/"><strong>Website</strong></a> ·
15
+ <a href="#install-in-10-seconds">Install</a> ·
16
+ <a href="#all-features-at-a-glance">Features</a> ·
17
+ <a href="./FAQ.md">FAQ</a>
18
+ </p>
19
+
13
20
  <p align="center">
14
21
  <img src=".github/commit.gif" width="640" alt="gitb commit demo" />
15
22
  </p>
@@ -116,7 +123,7 @@ Every command has a short alias (`gitb c`, `gitb p`, `gitb pu`, `gitb b`, `gitb
116
123
 
117
124
  | Group | Commands | What you get |
118
125
  |-------|----------|--------------|
119
- | **Commit** | `commit` (`c`) | Interactive conventional commits, fast-mode, AI messages, atomic split, fixup, amend, last-message edit, revert |
126
+ | **Commit** | `commit` (`c`), `edit` (`ed`) | Interactive conventional commits, fast-mode, AI messages, atomic split, fixup, amend, revert; `gitb edit` reworks the last commit message, picks any commit to reword, or renames the current branch |
120
127
  | **Sync remote** | `push` (`p`), `pull` (`pu`), `sync` (`sy`) | Safe push (with force/list), smart pull (rebase / merge / ff), one-shot rebase-on-main with optional force-push |
121
128
  | **Branches** | `branch` (`b`), `prev` (`-`) | List / switch / create-from-current / create-from-updated-main / delete (orphaned, merged, gone) / recent / previous / checkout-tag |
122
129
  | **Integration** | `merge` (`m`), `rebase` (`r`), `squash` (`sq`), `cherry` (`ch`) | Merge into current / into main / from remote · rebase onto main / interactive / autosquash / fastautosquash / pull-commits · AI-driven squash of branch commits into changelog-ready history · cherry-pick by hash, range, or interactive |
@@ -301,6 +308,7 @@ git config gitbasher.ai-base-url http://my-gateway:4000/v1/chat/completions
301
308
  | Command | Aliases | Description |
302
309
  |---------|---------|-------------|
303
310
  | [`commit`](#gitb-commit) | `c` `co` `com` | Create commits (interactive, fast, AI, split, fixup, amend, revert, …) |
311
+ | [`edit`](#gitb-edit) | `ed` `ee` | Rewrite the last commit message, reword an older commit, or rename the current branch |
304
312
  | [`push`](#gitb-push) | `p` `ps` `pus` | Push with conflict handling, force, or list-only |
305
313
  | [`pull`](#gitb-pull) | `pu` `pl` `pul` | Smart pull: rebase / merge / ff / fetch-only / interactive / dry-run |
306
314
  | [`branch`](#gitb-branch) | `b` `br` `bran` | Switch / list / create / delete / recent / gone / checkout-tag |
@@ -345,7 +353,6 @@ gitb commit <combined> # compact form: ff, aifp, fastsp, ...
345
353
  | `split` | `sp` `sl` | Split staged changes into one commit per detected scope |
346
354
  | `fixup` | `x` `fix` | Create a `--fixup` commit against an older commit |
347
355
  | `amend` | `a` `am` | Add changes into the last commit (no message edit) |
348
- | `last` | `l` | Rewrite the last commit message |
349
356
  | `revert` | `rev` | Revert a commit (`git revert --no-edit`) |
350
357
  | `ff` | | Ultrafast: `ai + split + fast` with no prompts (use `ffp` to also push) |
351
358
  | `help` | `h` `--help` `-h` | Show inline help |
@@ -380,7 +387,37 @@ gitb commit <combined> # compact form: ff, aifp, fastsp, ...
380
387
  - Word order doesn't matter: `ai fast push` == `push fast ai` == `aifp`.
381
388
  - Modifiers stack on actions: `ai+fixup`, `fast+amend`, `split+push`, `ai+staged`, …
382
389
  - `fast` and `staged` are mutually exclusive (one stages all, the other uses what's staged).
383
- - `last` and `revert` take no modifiers; `ff` only accepts `push` (as `ffp`).
390
+ - `revert` and `ff` only accept `push` (as `revp` / `ffp`); to rewrite the last commit message use [`gitb edit`](#gitb-edit).
391
+
392
+ ### `gitb edit`
393
+
394
+ Rewrites a **commit message** or the **current branch name** without touching the tree.
395
+
396
+ ```bash
397
+ gitb edit # reword the LAST commit (git commit --amend)
398
+ gitb edit pick # choose any recent commit and reword it via rebase
399
+ gitb edit branch # rename the current branch (interactive)
400
+ gitb edit branch feat/new-name # rename the current branch to feat/new-name
401
+ gitb edit help # show inline help
402
+ ```
403
+
404
+ Modes:
405
+
406
+ | Mode | Aliases | Description |
407
+ |------|---------|-------------|
408
+ | `<empty>` | | Reword the last commit (`git commit --amend`) |
409
+ | `pick` | `p` `c` `choose` | Pick any recent commit, reword via non-interactive rebase |
410
+ | `branch` | `b` `br` `rename` `ren` | Rename the current branch (`git branch -m`); optional remote sync |
411
+ | `help` | `h` `--help` `-h` | Show inline help |
412
+
413
+ Notes:
414
+
415
+ - `pick` requires a clean working tree (the rebase replays subsequent commits).
416
+ - Merge commits and the root commit cannot be reworded this way.
417
+ - If the commit was already pushed, run `gitb push force` afterwards.
418
+ - `branch` offers to push the new name and delete the old one on the remote when an upstream exists.
419
+ - To add staged changes into the last commit, use `gitb commit amend` instead.
420
+ - To undo the change, use `gitb undo amend` (for plain edit) or `gitb undo rebase` (for `pick`).
384
421
 
385
422
  ### `gitb push`
386
423