From: "Ping Yin" <pkufranky@gmail.com>
To: "Junio C Hamano" <gitster@pobox.com>
Cc: "Johannes Sixt" <j.sixt@viscovery.net>,
"Git Mailing List" <git@vger.kernel.org>
Subject: Re: [regression?] "git status -a" reports modified for empty submodule directory
Date: Wed, 30 Apr 2008 23:56:29 +0800 [thread overview]
Message-ID: <46dff0320804300856w941d948rbcc1cee06f1b41a9@mail.gmail.com> (raw)
In-Reply-To: <7vej8n3imp.fsf@gitster.siamese.dyndns.org>
On Wed, Apr 30, 2008 at 3:29 PM, Junio C Hamano <gitster@pobox.com> wrote:
>
>
> For example, it has long been known ever since submodules were introduced
> that if you work inside a sparsely checked out supermodule you have to use
> "commit -a" with care, because the command notices missing submodule, and
> there is no way for it to differenciate between the case you _want to_
> remove it and the case you did not care about it,
If i am not misunderstood, there is one way now (although broken now,
it used this kind of behaviour before git-status became built-in):
empty directory to denote that the submodule is not checked out and
unaware, and deleted directory to denote that the submodule is
deleted.
Actually, i don't like the empty directory trick, since it will leave
so many empty directories in a repository with many submodules
unchecked out.
>
> That quirk was something people could live with while submodule support
> was merely a newly invented curiosity. But I do not think a command at
> high level (iow Porcelain) such as commit and status should be left
> unaware of the Policy that equate missing submodule and unmodified one
> forever. We should actively enforce the policy, so that unless you
> explicitly ask nicely, the command should consider a missing submodule
> just as unmodified, e.g. "commit -a" should not remove unchecked out
> submodules.
>
> But then you would need a way to ask nicely. How? Perhaps using "git rm",
> and low level "update-index --remove". Do we even need "commit -A"? I
> doubt it --- you do not remove submodules every day.
>
> We'd like to keep the lowest-level unaware of the Policy, which means that
> "diff-files" and "diff-index" should report unchecked out submodules.
> Otherwise script writers will be left with no way to differenciate missing
> and removed submodules.
Good point.
>
> Once we start doing this, I think "git diff" Porcelain should fall into
> Policy-aware category.
>
Agree this pilicy.
If this change needs a long way. Should we fix the regression first?
Anyway, 'git status' and 'git status -a' should behave the same for
submodules unchecked out. I have tried but i failed. I just found this
regression was introduced on the first day of built-in status
--
Ping Yin
next prev parent reply other threads:[~2008-04-30 15:57 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-22 11:01 [regression?] "git status -a" reports modified for empty submodule directory Ping Yin
2008-04-22 11:04 ` Ping Yin
2008-04-22 12:15 ` Johannes Sixt
2008-04-22 12:39 ` Ping Yin
2008-04-22 12:46 ` Johannes Sixt
2008-04-22 18:00 ` Roman Shaposhnik
2008-04-29 15:31 ` Ping Yin
2008-04-29 16:07 ` [PATCH 0/2] Add tests for submodule with empty directory Ping Yin
2008-04-29 16:07 ` [PATCH 1/2] t4027: test diff " Ping Yin
2008-04-29 16:07 ` [PATCH 2/2] Add t7506 to test submodule related functions for git-status Ping Yin
2008-04-29 21:40 ` [regression?] "git status -a" reports modified for empty submodule directory Junio C Hamano
2008-04-30 6:39 ` Johannes Sixt
2008-04-30 7:29 ` Junio C Hamano
2008-04-30 15:56 ` Ping Yin [this message]
2008-05-02 13:35 ` [PATCH 0/4] Fix regression for unchecked out submodules Ping Yin
2008-05-02 13:35 ` [PATCH 1/4] t4027: test diff for submodule with empty directory Ping Yin
2008-05-02 13:35 ` [PATCH 2/4] Add t7506 to test submodule related functions for git-status Ping Yin
2008-05-02 13:35 ` [PATCH 3/4] Fix diff regression for submodules not checked out Ping Yin
2008-05-02 13:35 ` [PATCH 4/4] Fix ie_match_stat for non-checked-out submodule Ping Yin
2008-05-02 21:57 ` Junio C Hamano
2008-05-02 23:34 ` Ping Yin
2008-05-02 22:23 ` [PATCH 3/4] Fix diff regression for submodules not checked out Junio C Hamano
2008-05-02 23:55 ` Ping Yin
2008-05-03 0:07 ` [PATCH] Rename ENT_INEXISTENT to ENT_NONEXISTENT Ping Yin
2008-05-03 12:36 ` [PATCH 3/4] Fix diff regression for submodules not checked out Johannes Schindelin
2008-05-03 16:59 ` Junio C Hamano
2008-05-04 6:45 ` Junio C Hamano
2008-05-04 7:10 ` Ping Yin
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=46dff0320804300856w941d948rbcc1cee06f1b41a9@mail.gmail.com \
--to=pkufranky@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=j.sixt@viscovery.net \
/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).