Skip to content
  • Jens Lehmann's avatar
    Add the option "--ignore-submodules" to "git status" · 46a958b3
    Jens Lehmann authored and Junio C Hamano's avatar Junio C Hamano committed
    
    
    In some use cases it is not desirable that "git status" considers
    submodules that only contain untracked content as dirty. This may happen
    e.g. when the submodule is not under the developers control and not all
    build generated files have been added to .gitignore by the upstream
    developers. Using the "untracked" parameter for the "--ignore-submodules"
    option disables checking for untracked content and lets git diff report
    them as changed only when they have new commits or modified content.
    
    Sometimes it is not wanted to have submodules show up as changed when they
    just contain changes to their work tree (this was the behavior before
    1.7.0). An example for that are scripts which just want to check for
    submodule commits while ignoring any changes to the work tree. Also users
    having large submodules known not to change might want to use this option,
    as the - sometimes substantial - time it takes to scan the submodule work
    tree(s) is saved when using the "dirty" parameter.
    
    And if you want to ignore any changes to submodules, you can now do that
    by using this option without parameters or with "all" (when the config
    option status.submodulesummary is set, using "all" will also suppress the
    output of the submodule summary).
    
    A new function handle_ignore_submodules_arg() is introduced to parse this
    option new to "git status" in a single location, as "git diff" already
    knew it.
    
    Signed-off-by: default avatarJens Lehmann <Jens.Lehmann@web.de>
    Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
    46a958b3