Merge branch 'mh/ref-races'
commit079424a2cffa9c5a96c958ec50bb5a865a9305cf
authorJunio C Hamano <gitster@pobox.com>
Sun, 30 Jun 2013 22:40:01 +0000 (30 15:40 -0700)
committerJunio C Hamano <gitster@pobox.com>
Sun, 30 Jun 2013 22:40:05 +0000 (30 15:40 -0700)
tree09bd5381af78c8e2d1d86690c7568e2cf7279d93
parent08585fd48d2d3d8facce9bdc366cfd896329a4b8
parent98eeb09e8acb6cbe0b0da3b1772b6676fe6d167f
Merge branch 'mh/ref-races'

"git pack-refs" that races with new ref creation or deletion have
been susceptible to lossage of refs under right conditions, which
has been tightened up.

* mh/ref-races:
  for_each_ref: load all loose refs before packed refs
  get_packed_ref_cache: reload packed-refs file when it changes
  add a stat_validity struct
  Extract a struct stat_data from cache_entry
  packed_ref_cache: increment refcount when locked
  do_for_each_entry(): increment the packed refs cache refcount
  refs: manage lifetime of packed refs cache via reference counting
  refs: implement simple transactions for the packed-refs file
  refs: wrap the packed refs cache in a level of indirection
  pack_refs(): split creation of packed refs and entry writing
  repack_without_ref(): split list curation and entry writing
builtin/ls-files.c
cache.h
read-cache.c
refs.c