From: Joachim Berdal Haga <cjbhaga@broadpark.no>
To: Shawn Bohrer <shawn.bohrer@gmail.com>
Cc: Junio C Hamano <gitster@pobox.com>, git@vger.kernel.org
Subject: Re: [PATCH] git clean: Don't automatically remove directories when run within subdirectory
Date: Tue, 15 Apr 2008 08:33:23 +0200 [thread overview]
Message-ID: <48044C33.20006@broadpark.no> (raw)
In-Reply-To: <20080415034417.GA2882@lintop>
Shawn Bohrer wrote:
> On Mon, Apr 14, 2008 at 08:18:13PM +0200, Joachim Berdal Haga wrote:
>> I think that the best option would be to never remove a directory, even if
>> given explicitly, unless -d is given. Because my gut feeling is that when a
>> directory name is specified, it is most often meant as "clean inside the
>> given directory", ie. as a path delimiter.
>
> If there are no tracked files the only difference between the dir/ and
> dir case is that the former will leave behind an empty directory. So
> the difference between too much and too little is of little importance.
No, check this out; note that only in the very last case dir/subdir/subfile
would be removed.
$ git init; mkdir -p dir/subdir; touch dir/file dir/subdir/subfile
Initialized empty Git repository in .git/
$ touch dir/tracked-file; git add dir/tracked-file
$ ~/src/git/git-clean -n dir/
Would remove dir/file
Would not remove dir/subdir/
$ ~/src/git/git-clean -n dir
Would remove dir/file
Would not remove dir/subdir/
$ git rm -f dir/tracked-file
rm 'dir/tracked-file'
$ ~/src/git/git-clean -n dir/
Would remove dir/file
Would not remove dir/subdir/
$ ~/src/git/git-clean -n dir
Would remove dir/
> However,
>
> git clean dir
> Would not remove dir/
>
> is a little strange.
Yes, although it could be made less strange by adding a short explanation,
like "Would not remove dir/ (-d not given)". But I also think that the
difference between "dir" and "dir/" is very (too?) subtle in this case and
therefore should require explicit approval/action from the user.
-j.
next prev parent reply other threads:[~2008-04-15 6:34 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-08 18:22 git clean removes directories when not asked to Joachim B Haga
2008-04-08 18:38 ` Joachim B Haga
2008-04-09 17:04 ` [PATCH] " Joachim B Haga
2008-04-13 23:49 ` [PATCH] git clean: Don't automatically remove directories when run within subdirectory Shawn Bohrer
2008-04-13 23:49 ` [PATCH] git clean: Add test to verify directories aren't removed with a prefix Shawn Bohrer
2008-04-14 7:03 ` [PATCH] git clean: Don't automatically remove directories when run within subdirectory Joachim Berdal Haga
2008-04-14 7:18 ` Junio C Hamano
2008-04-14 17:06 ` Shawn Bohrer
2008-04-14 18:18 ` Joachim Berdal Haga
2008-04-15 3:44 ` Shawn Bohrer
2008-04-15 6:33 ` Joachim Berdal Haga [this message]
2008-04-15 14:26 ` Shawn Bohrer
2008-04-15 14:46 ` Joachim Berdal Haga
2008-04-15 3:14 ` Shawn Bohrer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=48044C33.20006@broadpark.no \
--to=cjbhaga@broadpark.no \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=shawn.bohrer@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.