rs/ref-transaction-1
tag7252af58a4b6f35f316463d8767143d6fbb41211
object 343758625608fff56c5dc153a95950cd3f011e01
authorJonathan Nieder <jrnieder@gmail.com>
Tue, 2 Sep 2014 20:49:23 +0000 (2 13:49 -0700)
"Use ref transactions", early part

Ronnie explains:

This patch series expands on the transaction API. It converts
ref updates, inside refs.c as well as external, to use the
transaction API for updates. This makes most ref updates
atomic when there are failures locking or writing to a ref.

This series teaches the tag, replace, commit, cherry-pick, fast-import,
checkout -b, branch, receive-pack, and http-fetch commands and all
update_ref and delete_ref callers to use the ref transaction API instead
of lock_ref_sha1.

The main user-visible change should be some cosmetic changes to error
messages.  The series also combines multiple ref updates into a single
transaction in 'git http-fetch -w' and when writing tags in fast-import
but otherwise doesn't change the granularity of transactions.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAABAgAGBQJUBi1zAAoJEN/Gce6zM/ol3PUQAJcuh1xNm6Ifb8/mJbzwZxiS
r8XQeZ2n9CgkpiubbT2Lc0F9gyhQiRUXwx/hmjuUMa3Ry4kL77gXpw9G7DiMLmOO
Hwr4RcuxhehVhsM4pLnSOuIteAeTMdeuKzwVEd2mIleBP+n9yaP6tzep8sZZsCjB
UZOXr7D1Dc4k43z/qbVYI3V2RpPjVkiaaZ/xHv0Klrr7KH+sakw65wuIP5ybrXex
w8Zgy+ZImWNLT+L/xJbqbAQvla3UB3fQwFhxMV1Lzyxom9OnEvaqfBk662mZOtBb
fGnibkNfWYxYidgO6kKsW2IllH1EYxkfqsH10nGcVPLNu732r7cxnR0zkYrXPwui
hOq/g1Sxv/tNN2Jn3rx5aZ3ql1pSoZaEvd30+PxhfpRxes+ki1ZzD09VXEMCRyIn
kXoLDJATojf1RwOIDPONywqAV0tugrMJkzBQXTu2jGTQViynIZPUFQNHHlHQ4dCX
4rg64CuJMHilU7C5eGtQe17dLFaYyRj70Eo4kMG4J1NZYeSmdDnjW3pDol6vPAlV
QFi2zYFQK/4Q1rJzszuU4b0oGmw2o3s0kfOSeAv7QF+XdplySYiCgJxMP9zrQ1vZ
FYVpe6/Uu8afkefDlKa7PegrIf5INOie5poVDgA5IuG1vuFEEc1CgFRWD/RPe2XV
BRajiYXwumznB575ZAoz
=3AiK
-----END PGP SIGNATURE-----