From: "Eric Raible" <raible@gmail.com>
To: "Changsheng Jiang" <jiangzuoyan@gmail.com>
Cc: "Git Mailing List" <git@vger.kernel.org>
Subject: Re: RFC: perhaps a "new file" should not be deleted by "git reset --hard"
Date: Wed, 10 Sep 2008 19:46:40 -0700 [thread overview]
Message-ID: <279b37b20809101946k309ad113neb7d051f1c6c410e@mail.gmail.com> (raw)
In-Reply-To: <eafc0afe0809101912v72916d3hce9ae5d6812f0db8@mail.gmail.com>
On Wed, Sep 10, 2008 at 7:12 PM, Changsheng Jiang <jiangzuoyan@gmail.com> wrote:
> I think the current behavior is better than you described. If you want to
> ignore some files, you can added it to the exclude file. All files not
> excluded in the repo directory is maintained by git.
That doesn't really address the problem. This is an
updated example that specifically ignores the file:
# Create a single commit in a new repo (so that we have a HEAD)
mkdir xx
cd xx
git init
git commit --allow-empty -m"initial"
# Add an important file
echo "Important stuff" > file42
git add file42
echo file42 > .gitignore
git status # -> new file: file42
ls # -> file42, or course
git reset --hard
ls # -> nothing
So not only was file42 never actually tracked by git
(IMHO - I realize that this is debatable) but it was also
specifically ignored, and it is _still_ deleted w/out a trace!
I realize that "git reset" will simply unstage the new file
in either case (w or w/out .gitignore), but the consequences
of an accidental "git reset --hard" are pretty severe in this
case. This behavior seems definitely contrary to Linus's
explanation:
And "git reset" won't be deleting files it doesn't track (it had _better_
not touch them), even more so when it has been told to ignore them, so it
makes total sense to _not_ delete them when doing that reset.
- Eric
next prev parent reply other threads:[~2008-09-11 2:47 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-09-10 19:12 RFC: perhaps a "new file" should not be deleted by "git reset --hard" Eric Raible
[not found] ` <eafc0afe0809101912v72916d3hce9ae5d6812f0db8@mail.gmail.com>
2008-09-11 2:14 ` Changsheng Jiang
2008-09-11 2:38 ` Elijah Newren
2008-09-11 20:50 ` Eric Raible
2008-09-11 21:34 ` Junio C Hamano
2008-09-11 22:19 ` Eric Raible
2008-09-11 23:04 ` Jeff Whiteside
2008-09-11 23:29 ` Eric Raible
2008-09-11 2:46 ` Eric Raible [this message]
2008-09-11 6:05 ` Changsheng Jiang
2008-09-11 6:15 ` RFC: perhaps a Eric Raible
2008-09-11 16:32 ` RFC: perhaps a "new file" should not be deleted by "git reset --hard" Elijah Newren
[not found] ` <3ab397d0809111022m24c81bd9y2520f6be478babd3@mail.gmail.com>
2008-09-11 21:24 ` Eric Raible
2008-09-11 23:39 ` Miklos Vajna
2008-09-11 23:49 ` Eric Raible
2008-09-12 15:41 ` Miklos Vajna
2008-09-11 6:14 ` Mike Hommey
2008-09-11 20:26 ` Eric Raible
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=279b37b20809101946k309ad113neb7d051f1c6c410e@mail.gmail.com \
--to=raible@gmail.com \
--cc=git@vger.kernel.org \
--cc=jiangzuoyan@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).