reset: don't compute unstaged changes after reset when --quiet
commit9ac8125d1ab83f1a0c48f6f30bb8fea92d9770d7
authorBen Peart <benpeart@microsoft.com>
Tue, 23 Oct 2018 19:04:21 +0000 (23 15:04 -0400)
committerJunio C Hamano <gitster@pobox.com>
Wed, 24 Oct 2018 02:57:07 +0000 (24 11:57 +0900)
tree63b8f8230ac3585388e1aec9ff686d6636d42976
parentc4df23f7927d8d00e666a3c8d1b3375f1dc8a3c1
reset: don't compute unstaged changes after reset when --quiet

When git reset is run with the --quiet flag, don't bother finding any
additional unstaged changes as they won't be output anyway.  This speeds up
the git reset command by avoiding having to lstat() every file looking for
changes that aren't going to be reported anyway.

The savings can be significant.  In a repo on Windows with 200K files
"git reset" drops from 7.16 seconds to 0.32 seconds for a savings of 96%.

Signed-off-by: Ben Peart <benpeart@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/reset.c