author | Junio C Hamano <gitster@pobox.com> | |
Mon, 20 Apr 2009 10:58:20 +0000 (03:58 -0700) | ||
committer | Junio C Hamano <gitster@pobox.com> | |
Mon, 20 Apr 2009 11:16:42 +0000 (04:16 -0700) | ||
commit | 83ae209bf9708bf1b67dbac4a3629a0003af5dbb | |
tree | a5e36c308a6a5121b66f7648e69627a71f6c37f6 | tree | snapshot |
parent | 456156dc068b7664c08e35157e17a6440ec68f32 | commit | diff |
checkout branch: prime cache-tree fully
When switching to another branch, the earlier code relied on incremental
invalidation of cache-tree entries to degrade it. While it is not wrong
per-se, we know that the resulting index must fully match the branch we
are switching to unless the -m (merge) option is used.
We should simply fully re-prime the cache-tree using the new tree object
in such a case. And for safety, invalidate the cache-tree as a whole in
other cases.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
When switching to another branch, the earlier code relied on incremental
invalidation of cache-tree entries to degrade it. While it is not wrong
per-se, we know that the resulting index must fully match the branch we
are switching to unless the -m (merge) option is used.
We should simply fully re-prime the cache-tree using the new tree object
in such a case. And for safety, invalidate the cache-tree as a whole in
other cases.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin-checkout.c | diff | blob | history |