STG-DELETE(1)
π stg-delete β the manual page, but make it cute β¨
ok so bestie, welcome to stg-delete, a page straight out of the StGit Manual. it's the one that deletes patches. that's the whole vibe. let's get into it π«Ά
πΈ SYNOPSIS πΈ
here's every single way you can call this thing, and yes you need all four:
stg delete [OPTIONS] [<patch>...]
stg delete [OPTIONS] [-A] [-U] [-H]
stg delete [OPTIONS] --all
stg delete [OPTIONS] --top
four whole moods. pick your fighter π
π¦ DESCRIPTION π¦
delete patches. that's it. that's the description. short, sweet, iconic π
β¨ OPTIONS β¨
okay this is the part where we go through literally every flag, and i mean every flag. no skipping. no cap π§
-a,--allβ nukes all the patches. every last one. gone. π-A,--appliedβ deletes the applied patches. just those ones, bestie.-U,--unappliedβ deletes the unapplied patches. the ones just chillin' off to the side.-H,--hiddenβ deletes the hidden patches. yes, the sneaky ones. they're not immune π-t,--topβ deletes the topmost patch. just the one on top, like picking the cherry off π--spillβ deletes the patches but doesn't touch the index and worktree. the whole point is it "spills" the patch contents into the index and worktree instead. lowkey such a moment β¨
heads up: this only works when you're deleting applied patches at the top of the stack. anywhere else and it's a no-go.
and like, why would you even want this? apparently it's useful for splitting a patch into smaller pieces. so it's giving "unpacking your suitcase on the floor" energy π§³
-bbranch,--branch=branch β use branch instead of the current branch. like, go do your thing over there instead π¦--conflicts[=policy]β either"allow"or"disallow"pushing a patch with conflicts. two paths, choose wisely π
using --conflicts=allow (or just --conflicts, the lazy girl version) lets a patch get pushed even if it might end up with unresolved merge conflicts. the patch gets pushed, and the files with conflicts are left with conflict markers for you to resolve manually. or you can just hit stg undo --hard and pretend it never happened π. this is the default behavior, and it also lines up with "stgit.push.allow-conflicts" being set to "true".
using --conflicts=disallow means no patch that would cause merge conflicts gets pushed. periodt. the operation stops on the last patch that can be pushed without conflicts. and you can configure this whole thing by setting "stgit.push.allow-conflicts" to "false" π
π STGIT π
part of the StGit suite β see stg(1) π
that's the whole page bestie, you ate that π go forth and delete responsibly πΈ
p.s. this little beauty is from StGit 2.7.0, dated 10/17/2026. mwah π
π¦ where this page comes from
- opensuse-leap 16.0: stgit 2.7.0-bp160.1.1 Β· GPL-2.0-only
- opensuse-leap 16.0: stgit 2.7.0-bp160.1.1 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms