From: Ben Peart <benpeart@xxxxxxxxxxxxx> Minor update to comment from V2. Also wrapped commit messages to be <80 chars wide. Base Ref: master Web-Diff: https://github.com/benpeart/git/commit/fef76edbdc Checkout: git fetch https://github.com/benpeart/git initial-checkout-v3 && git checkout fef76edbdc ### Interdiff (v2..v3): diff --git a/builtin/checkout.c b/builtin/checkout.c index 9c6e94319e..9f8f3466f6 100644 --- a/builtin/checkout.c +++ b/builtin/checkout.c @@ -593,8 +593,9 @@ static int skip_merge_working_tree(const struct checkout_opts *opts, */ /* - * Do the merge if this is the initial checkout - * + * Do the merge if this is the initial checkout. We cannot use + * is_cache_unborn() here because the index hasn't been loaded yet + * so cache_nr and timestamp.sec are always zero. */ if (!file_exists(get_index_file())) return 0; ### Patches Ben Peart (2): checkout: add test demonstrating regression with checkout -b on initial commit checkout: fix regression in checkout -b on intitial checkout builtin/checkout.c | 8 ++++++++ t/t2018-checkout-branch.sh | 9 +++++++++ 2 files changed, 17 insertions(+) base-commit: 77556354bb7ac50450e3b28999e3576969869068 -- 2.19.1.gvfs.1.16.g9d1374d