diff options
author | Michael Haggerty <mhagger@alum.mit.edu> | 2012-01-17 06:50:34 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2012-01-17 11:55:04 -0800 |
commit | 39ef7fae9a398ad4523a211bc87aff599c3d3869 (patch) | |
tree | a7e974effd715ba2669a9c22be80a690b393d12b | |
parent | 30249ee68fa5fa63bfb9bb417987b0547253b8e7 (diff) | |
download | git-mh/ref-clone-without-extra-refs.tar.gz |
write_remote_refs(): create packed (rather than extra) refsmh/ref-clone-without-extra-refs
write_remote_refs() creates new packed refs from references obtained
from the remote repository, which is "out of thin air" as far as the
local repository is concerned. Previously it did this by creating
"extra" refs, then calling pack_refs() to bake them into the
packed-refs file. Instead, create packed refs (in the packed
reference cache) directly, then call pack_refs().
Aside from being more logical, this is another step towards removing
extra refs entirely.
Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | builtin/clone.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/builtin/clone.c b/builtin/clone.c index 86db954730..9413537a8e 100644 --- a/builtin/clone.c +++ b/builtin/clone.c @@ -441,11 +441,10 @@ static void write_remote_refs(const struct ref *local_refs) for (r = local_refs; r; r = r->next) { if (!r->peer_ref) continue; - add_extra_ref(r->peer_ref->name, r->old_sha1, 0); + add_packed_ref(r->peer_ref->name, r->old_sha1); } pack_refs(PACK_REFS_ALL); - clear_extra_refs(); } static int write_one_config(const char *key, const char *value, void *data) |