git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Sergio Callegari <sergio.callegari@gmail.com>
To: Junio C Hamano <gitster@pobox.com>
Cc: git@vger.kernel.org
Subject: Re: Possible bug with git status in 1.7.0
Date: Wed, 17 Feb 2010 20:52:43 +0100	[thread overview]
Message-ID: <4B7C490B.8030902@gmail.com> (raw)
In-Reply-To: <7vvddvoegv.fsf@alter.siamese.dyndns.org>

Junio C Hamano wrote:
> Sergio <sergio.callegari@gmail.com> writes:
>
>   
>> if you have a submodule and the submodule contains
>> untracked files, "git status" in 1.7.0 keeps showing
>> the module as modified.
>>
>> But of of course it is useless to "git add" the module
>> or to try to "git  commit -a", since the index entry is ok
>>     
>
> Of course it is useless to "git add" in the superproject, and this is
> an intended bugfix.
>
> You are getting reminded that you either forgot to "git add" that file in
> the submodule, or you forgot to add that file to .gitignore in the
> submodule.
>   

Thanks for the explanation!

The wording of the reminder is a bit unclear, though.  Suppose that the 
problem is with submodule "mod".

What you get from git status is a notice that something is modified but 
not updated, with the following suggestion

# Changed but not 
updated:                                                                                      

#   (use "git add <file>..." to update what will be committed)

and then the notice about what is in fact modified

#       modified:   mod


So the first problem is that now git status provides a hint that may be 
confusing.  One gets the idea that he needs to add mod (to store a new 
commit id in the index) and not to add a file in mod.


As a second issue, note that mod is in fact not really modified being that

1) no tracked file in it has been modified.
2) no new commit has been made

and the fact is that from git status I cannot recognize anymore if the 
module is really changed (the module commit id has changed) or has 
uncommited changes (some tracked file is changed) or is merely polluted 
by untracked files, so now I always need to explore the submodule.

It is true that this can be solved putting more stuff in .gitignore.
However, it might be a matter of taste, but I do not like putting all 
byproducts in .gitignore  because not doing so allows me to 
differentiate between

- files that are just garbage
- files that are not tracked but may be still precious

and selectively clean either category using the -x or -X options of git 
clean.


So, it would be nice to improve the feedback of git status for this 
particular case and possibly have an option to avoid status being so 
wordy about untracked files.


Sergio

  reply	other threads:[~2010-02-17 19:53 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-02-17 19:14 Possible bug with git status in 1.7.0 Sergio
2010-02-17 19:21 ` Junio C Hamano
2010-02-17 19:52   ` Sergio Callegari [this message]
2010-02-17 20:52     ` Jens Lehmann
2010-02-19 16:42       ` Sergio Callegari
2010-02-19 20:55         ` Jens Lehmann
2010-02-20 11:05           ` Sergio Callegari

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=4B7C490B.8030902@gmail.com \
    --to=sergio.callegari@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.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).