* Feat. req.: add a flag to `git clean` to also remove ignored nested repositories
@ 2026-01-09 3:50 Simon Cheng
2026-01-09 13:18 ` brian m. carlson
0 siblings, 1 reply; 3+ messages in thread
From: Simon Cheng @ 2026-01-09 3:50 UTC (permalink / raw)
To: git
Currently, running `git clean -dxf` on a repository that includes
another repository under an ignored path would skip said repository:
$ git clean -dxf
Removing foo
Skipping repository ignored-path/repo
Removing bar
This is to request the addition of a new flag to allow altering this
behaviour, i.e. to make `git clean` remove those repositories too.
For me, this feature is relevant for building `*-git` packages from
the AUR, for example https://aur.archlinux.org/packages/paru-git. By
default `makepkg` would clone the source repo into `./src/NAME`, which
creates the aforementioned condition. Without such an option on `git
clean`, cleanup after build is rather complicated.
Thanks and regards,
Simon Cheng
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Feat. req.: add a flag to `git clean` to also remove ignored nested repositories
2026-01-09 3:50 Feat. req.: add a flag to `git clean` to also remove ignored nested repositories Simon Cheng
@ 2026-01-09 13:18 ` brian m. carlson
2026-01-16 5:16 ` Simon Cheng
0 siblings, 1 reply; 3+ messages in thread
From: brian m. carlson @ 2026-01-09 13:18 UTC (permalink / raw)
To: Simon Cheng; +Cc: git
[-- Attachment #1: Type: text/plain, Size: 1279 bytes --]
On 2026-01-09 at 03:50:30, Simon Cheng wrote:
> Currently, running `git clean -dxf` on a repository that includes
> another repository under an ignored path would skip said repository:
>
> $ git clean -dxf
> Removing foo
> Skipping repository ignored-path/repo
> Removing bar
>
> This is to request the addition of a new flag to allow altering this
> behaviour, i.e. to make `git clean` remove those repositories too.
>
> For me, this feature is relevant for building `*-git` packages from
> the AUR, for example https://aur.archlinux.org/packages/paru-git. By
> default `makepkg` would clone the source repo into `./src/NAME`, which
> creates the aforementioned condition. Without such an option on `git
> clean`, cleanup after build is rather complicated.
Does this work if you use `git clean -dxff` (that is, with a second `-f`
flag)? I do often clean up ignored repositories that way (and it's
documented to do that in the manual page), but I'm not sure if you're
maybe doing something a little different from my workflow.
If that _doesn't_ work for you, would you mind creating a quick shell
script to demonstrate the problem that you're seeing so that we could
provide better advice?
--
brian m. carlson (they/them)
Toronto, Ontario, CA
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 262 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Feat. req.: add a flag to `git clean` to also remove ignored nested repositories
2026-01-09 13:18 ` brian m. carlson
@ 2026-01-16 5:16 ` Simon Cheng
0 siblings, 0 replies; 3+ messages in thread
From: Simon Cheng @ 2026-01-16 5:16 UTC (permalink / raw)
To: brian m. carlson, Simon Cheng, git
Ah yes that's exactly what I need, thanks a lot. Pebkac moment for me sorry.
I must say though, the discoverability of this "double -f" behaviour
can be improved. Maybe the "nested repository skipped" message can
include a hint? Something like this I imagine:
Skipping repository ignored-path/repo (pass a second `-f` to remove)
Wdyt?
On Fri, 9 Jan 2026 at 21:18, brian m. carlson
<sandals@crustytoothpaste•net> wrote:
>
> On 2026-01-09 at 03:50:30, Simon Cheng wrote:
> > Currently, running `git clean -dxf` on a repository that includes
> > another repository under an ignored path would skip said repository:
> >
> > $ git clean -dxf
> > Removing foo
> > Skipping repository ignored-path/repo
> > Removing bar
> >
> > This is to request the addition of a new flag to allow altering this
> > behaviour, i.e. to make `git clean` remove those repositories too.
> >
> > For me, this feature is relevant for building `*-git` packages from
> > the AUR, for example https://aur.archlinux.org/packages/paru-git. By
> > default `makepkg` would clone the source repo into `./src/NAME`, which
> > creates the aforementioned condition. Without such an option on `git
> > clean`, cleanup after build is rather complicated.
>
> Does this work if you use `git clean -dxff` (that is, with a second `-f`
> flag)? I do often clean up ignored repositories that way (and it's
> documented to do that in the manual page), but I'm not sure if you're
> maybe doing something a little different from my workflow.
>
> If that _doesn't_ work for you, would you mind creating a quick shell
> script to demonstrate the problem that you're seeing so that we could
> provide better advice?
> --
> brian m. carlson (they/them)
> Toronto, Ontario, CA
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-01-16 5:16 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-09 3:50 Feat. req.: add a flag to `git clean` to also remove ignored nested repositories Simon Cheng
2026-01-09 13:18 ` brian m. carlson
2026-01-16 5:16 ` Simon Cheng
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox