[PATCH 0/7] Tidy up the constants related to ref_update::flags
- From
Michael Haggerty <mhagger@alum.mit.edu>
- Date
- Oct 28, 2017, 09:49 UTC
- Message-ID
- <cover.1509183413.git.mhagger@alum.mit.edu>
Nothing earth-shattering here; just cleaning up some internal details that have bothered me for a while:
* Make it clearer which flag values the packed backend might confront.
* Reduce the visibility of the constants that are only relevant to the files backend. The most notable of these is `REF_ISPRUNING`, which previously was special-cased in `REF_TRANSACTION_UPDATE_ALLOWED_FLAGS` even though it shouldn't be used by callers outside of the refs module.
* Die (rather then silently ignoring) if any disallowed flags are passed to `ref_transaction_update()` or friends.
* Rename `REF_NODEREF` to `REF_NO_DEREF` (otherwise it's easy to read as `REF_NODE_REF`!)
* Rename `REF_ISPRUNING` to `REF_IS_PRUNING`.
* Make the constants' numerical values correspond to their order.
* Improve a lot of docstrings.
This patch series depends on `bc/object-id`, mostly so that the comments can talk about OIDs rather than SHA-1s.
These patches are also available as branch `tidy-ref-update-flags` from my GitHub fork [1].
Michael
[1] https://github.com/mhagger/git
Michael Haggerty (7): files_transaction_prepare(): don't leak flags to packed transaction prune_ref(): call `ref_transaction_add_update()` directly ref_transaction_update(): die on disallowed flags ref_transaction_add_update(): remove a check refs: tidy up and adjust visibility of the `ref_update` flags refs: rename constant `REF_NODEREF` to `REF_NO_DEREF` refs: rename constant `REF_ISPRUNING` to `REF_IS_PRUNING`
builtin/am.c | 2 +- builtin/branch.c | 2 +- builtin/checkout.c | 2 +- builtin/clone.c | 4 +- builtin/notes.c | 2 +- builtin/remote.c | 6 +-- builtin/symbolic-ref.c | 2 +- builtin/update-ref.c | 4 +- refs.c | 6 +-- refs.h | 67 ++++++++++++++++------------- refs/files-backend.c | 113 +++++++++++++++++++++++++++++++++++++------------ refs/refs-internal.h | 67 +++++++---------------------- sequencer.c | 6 +-- 13 files changed, 155 insertions(+), 128 deletions(-)
-- 2.14.1