diff options
author | Brandon Williams <bmwill@google.com> | 2017-06-20 19:19:32 (GMT) |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2017-06-24 01:24:34 (GMT) |
commit | 73f192c991016bf88a9416cdf0e949f8b946f7e2 (patch) | |
tree | f86acaeb5a732acfd642a9b60ca5e76d2728c292 /mergesort.h | |
parent | 25bf951381a4880c43a3d1c65e6dce651e61148f (diff) | |
download | git-73f192c991016bf88a9416cdf0e949f8b946f7e2.zip git-73f192c991016bf88a9416cdf0e949f8b946f7e2.tar.gz git-73f192c991016bf88a9416cdf0e949f8b946f7e2.tar.bz2 |
setup: don't perform lazy initialization of repository state
Under some circumstances (bogus GIT_DIR value or the discovered gitdir
is '.git') 'setup_git_directory()' won't initialize key repository
state. This leads to inconsistent state after running the setup code.
To account for this inconsistent state, lazy initialization is done once
a caller asks for the repository's gitdir or some other piece of
repository state. This is confusing and can be error prone.
Instead let's tighten the expected outcome of 'setup_git_directory()'
and ensure that it initializes repository state in all cases that would
have been handled by lazy initialization.
This also lets us drop the requirement to have 'have_git_dir()' check if
the environment variable GIT_DIR was set as that will be handled by the
end of the setup code.
Signed-off-by: Brandon Williams <bmwill@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'mergesort.h')
0 files changed, 0 insertions, 0 deletions