Re: [PATCH v2 19/27] refs: Add a concept of a reference transaction
- From
Michael Haggerty <mhagger@alum.mit.edu>
- Date
- Mar 26, 2014, 21:42 UTC
- Message-ID
- <533349DF.8090004@alum.mit.edu>
- In-Reply-To
- <53331ED7.9020004@kitware.com>
On 03/26/2014 07:39 PM, Brad King wrote:
Show 24 quoted lines
> On 03/24/2014 01:56 PM, Michael Haggerty wrote: >> +void ref_transaction_update(struct ref_transaction *transaction, >> + const char *refname, >> + unsigned char *new_sha1, unsigned char *old_sha1, >> + int flags, int have_old); > [snip] >> +void ref_transaction_create(struct ref_transaction *transaction, >> + const char *refname, >> + unsigned char *new_sha1, >> + int flags); > [snip] >> +void ref_transaction_delete(struct ref_transaction *transaction, >> + const char *refname, >> + unsigned char *old_sha1, >> + int flags, int have_old); > > Perhaps we also need: > > void ref_transaction_verify(struct ref_transaction *transaction, > const char *refname, > unsigned char *old_sha1, > int flags, int have_old); > > as equivalent to the "verify" command in "update-ref --stdin"?
Yes. That's already on my todo list for a future batch of patches. But first I was going to beef up the ref_update structure to handle verify actions directly rather than as updates with oldvalue==newvalue, probably by turning has_old into a flag with HAS_OLD and HAS_NEW bits.
Michael
-- Michael Haggerty mhagger@alum.mit.edu http://softwareswirl.blogspot.com/