Browse Source

update_ref(): improve documentation

Add a docstring for update_ref(), emphasizing its similarity to
ref_transaction_update(). Rename its parameters to match those of
ref_transaction_update().

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Reviewed-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Michael Haggerty 10 years ago committed by Junio C Hamano
parent
commit
4b7b520b9f
  1. 8
      refs.c
  2. 13
      refs.h

8
refs.c

@ -3738,8 +3738,8 @@ int ref_transaction_verify(struct ref_transaction *transaction, @@ -3738,8 +3738,8 @@ int ref_transaction_verify(struct ref_transaction *transaction,
flags, NULL, err);
}

int update_ref(const char *action, const char *refname,
const unsigned char *sha1, const unsigned char *oldval,
int update_ref(const char *msg, const char *refname,
const unsigned char *new_sha1, const unsigned char *old_sha1,
unsigned int flags, enum action_on_err onerr)
{
struct ref_transaction *t;
@ -3747,8 +3747,8 @@ int update_ref(const char *action, const char *refname, @@ -3747,8 +3747,8 @@ int update_ref(const char *action, const char *refname,

t = ref_transaction_begin(&err);
if (!t ||
ref_transaction_update(t, refname, sha1, oldval,
flags, action, &err) ||
ref_transaction_update(t, refname, new_sha1, old_sha1,
flags, msg, &err) ||
ref_transaction_commit(t, &err)) {
const char *str = "update_ref failed for ref '%s': %s";


13
refs.h

@ -344,9 +344,16 @@ int ref_transaction_commit(struct ref_transaction *transaction, @@ -344,9 +344,16 @@ int ref_transaction_commit(struct ref_transaction *transaction,
*/
void ref_transaction_free(struct ref_transaction *transaction);

/** Lock a ref and then write its file */
int update_ref(const char *action, const char *refname,
const unsigned char *sha1, const unsigned char *oldval,
/**
* Lock, update, and unlock a single reference. This function
* basically does a transaction containing a single call to
* ref_transaction_update(). The parameters to this function have the
* same meaning as the corresponding parameters to
* ref_transaction_update(). Handle errors as requested by the `onerr`
* argument.
*/
int update_ref(const char *msg, const char *refname,
const unsigned char *new_sha1, const unsigned char *old_sha1,
unsigned int flags, enum action_on_err onerr);

extern int parse_hide_refs_config(const char *var, const char *value, const char *);

Loading…
Cancel
Save