Hi Folks,
Here is the third revision of a series to support locking multiple
refs at the same time to update all of them consistently. The
previous revisions of the series can be found at $gmane/233260 and
$gmane/233458.
Updates since the previous revision of the series:
* Incorporated style fixes suggested in patches 6-8.
* In patch 3, the local "lock" variables in update_ref_lock and
update_ref now drop the existing "static" declaration.
* In patch 4, delete_ref_loose internals have been cleaned up
as Michael suggested.
* In patch 6:
- struct ref_update has been documented
- update_refs now takes an array of pointers to struct ref_update
as Michael and Junio both suggested
- update_refs return cases were simplified with a label and goto
- update_refs now stops immediately if any ref write fails
- ref_update_compare now compares only the ref name
* In patch 7, another new input format is proposed. It now uses
quoting based on unquote_c_style.
* In patch 8, more new test cases have been added. Failure cases
are now covered in separate steps to simplify diagnosis.
-Brad
Brad King (8):
reset: rename update_refs to reset_refs
refs: report ref type from lock_any_ref_for_update
refs: factor update_ref steps into helpers
refs: factor delete_ref loose ref step into a helper
refs: add function to repack without multiple refs
refs: add update_refs for multiple simultaneous updates
update-ref: support multiple simultaneous updates
update-ref: add test cases covering --stdin signature
Documentation/git-update-ref.txt | 20 ++-
branch.c | 2 +-
builtin/commit.c | 2 +-
builtin/fetch.c | 3 +-
builtin/receive-pack.c | 3 +-
builtin/reflog.c | 2 +-
builtin/replace.c | 2 +-
builtin/reset.c | 4 +-
builtin/tag.c | 2 +-
builtin/update-ref.c | 103 ++++++++++++++-
fast-import.c | 2 +-
refs.c | 191 ++++++++++++++++++++++++----
refs.h | 22 +++-
sequencer.c | 3 +-
t/t1400-update-ref.sh | 256 ++++++++++++++++++++++++++++++++++++++
15 files changed, 578 insertions(+), 39 deletions(-)
--
1.7.10.4
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html