Junio C Hamano wrote:
Sergio <sergio.callegari@xxxxxxxxx> 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
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html