Merge branch 'rs/ref-transaction-reflog' into jch
commit79e3ec04ffa7611bbc1e184cb05b803a2fa85876
authorJunio C Hamano <gitster@pobox.com>
Mon, 25 Aug 2014 19:33:55 +0000 (25 12:33 -0700)
committerJunio C Hamano <gitster@pobox.com>
Mon, 25 Aug 2014 19:33:55 +0000 (25 12:33 -0700)
tree5ff2bd94c9c36b0d8f6de8208813ba5a847429c9
parentcd51a8c19ddba466b01e58293a2fc20bc7709cb3
parent8d75baa250c0f84cc438568cb53ef1a9dd3dfec9
Merge branch 'rs/ref-transaction-reflog' into jch

Cover updates to reflog with the same transaction mechanism as used
for reflog manipulations.

No more nitpicks and better design suggestions?

* rs/ref-transaction-reflog:
  refs.c: allow deleting refs with a broken sha1
  refs.c: remove lock_any_ref_for_update
  refs.c: make unlock_ref/close_ref/commit_ref static
  refs.c: rename log_ref_setup to create_reflog
  reflog.c: use a reflog transaction when writing during expire
  refs.c: allow multiple reflog updates during a single transaction
  refs.c: only write reflog update if msg is non-NULL
  refs.c: add a flag to allow reflog updates to truncate the log
  refs.c: add a transaction function to append a reflog entry
  lockfile.c: make hold_lock_file_for_append preserve meaningful errno
  refs.c: add a function to append a reflog entry to a fd
  refs.c: add a new update_type field to ref_update
  refs.c: rename the transaction functions
  refs.c: make ref_transaction_delete a wrapper for ref_transaction_update
  refs.c: make ref_transaction_create a wrapper to ref_transaction_update

# Conflicts:
#  builtin/checkout.c
#  builtin/reflog.c
#  refs.c
#  refs.h
#  walker.c
14 files changed:
branch.c
builtin/branch.c
builtin/checkout.c
builtin/commit.c
builtin/fetch.c
builtin/receive-pack.c
builtin/replace.c
builtin/tag.c
fast-import.c
lockfile.c
refs.c
refs.h
sequencer.c
walker.c