git-update-dirs: Only run "git status" when necessary

Don't run "git status" in every repo if we don't need to. git status is
used to set $is_modified, and that's only used when "ga sync" is
involved, i.e. -G/--ga-dropget, -u/--ga-dropunused, -U/--ga-moveunused
and -g/--ga-sync.

The reason "git annex sync" is avoided in modified repos is that it will
automatically commit the changes with a non-descriptive commit message.

1813ca4a-35b3-11e4-be98-c80aa9e67bbd
git-update-dirs: Delete check for .no-git-gc

If the file .no-git-gc existed, "git gc" was skipped in that repo. This
way of doing things got obsolete after commit c08cd67 ("git-update-dirs:
Make it possible to suppress commands with git config", 2014-04-23)
entered the building.

51b99ee0-35be-11e4-b497-c80aa9e67bbd