From: Junio C Hamano Date: Tue, 21 Oct 2014 20:28:10 +0000 (-0700) Subject: Merge branch 'rs/ref-transaction' X-Git-Tag: v2.2.0-rc0~32 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/3c85452bb0ad744f453bb6b8e8373483a8bfc590?ds=inline;hp=--cc Merge branch 'rs/ref-transaction' The API to update refs have been restructured to allow introducing a true transactional updates later. We would even allow storing refs in backends other than the traditional filesystem-based one. * rs/ref-transaction: (25 commits) ref_transaction_commit: bail out on failure to remove a ref lockfile: remove unable_to_lock_error refs.c: do not permit err == NULL remote rm/prune: print a message when writing packed-refs fails for-each-ref: skip and warn about broken ref names refs.c: allow listing and deleting badly named refs test: put tests for handling of bad ref names in one place packed-ref cache: forbid dot-components in refnames branch -d: simplify by using RESOLVE_REF_READING branch -d: avoid repeated symref resolution reflog test: test interaction with detached HEAD refs.c: change resolve_ref_unsafe reading argument to be a flags field refs.c: make write_ref_sha1 static fetch.c: change s_update_ref to use a ref transaction refs.c: ref_transaction_commit: distinguish name conflicts from other errors refs.c: pass a list of names to skip to is_refname_available refs.c: call lock_ref_sha1_basic directly from commit refs.c: refuse to lock badly named refs in lock_ref_sha1_basic rename_ref: don't ask read_ref_full where the ref came from refs.c: pass the ref log message to _create/delete/update instead of _commit ... --- 3c85452bb0ad744f453bb6b8e8373483a8bfc590