git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/2] add a reflog_exists and delete_reflog abstraction
@ 2014-05-06 22:45 Ronnie Sahlberg
  2014-05-06 22:45 ` [PATCH v2 1/2] refs.c: add new functions reflog_exists and delete_reflog Ronnie Sahlberg
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Ronnie Sahlberg @ 2014-05-06 22:45 UTC (permalink / raw)
  To: git; +Cc: mhagger, Ronnie Sahlberg

This is a series adds two new functions to try to hide the reflog
implementation details from the callers in checkout.c and reflog.c.
It adds new functions to test if a reflog exists and to delete it, thus
allowing checkout.c to perform this if-test-then-delete operation without
having to know the internal implementation of reflogs (i.e. that they are files
that live under .git/logs)

Additionally we change checkout.c to use ref_exists instead of file_exists
when checking for ref existence. This fixes a bug when checkout could delete
a valid reflog file if the branch was a packed ref. The tests have been updated
to test for this bug.


Version 2:
 - Typos and fixes suggested by mhagger.
 - Break the checkout-deletes reflog bugfix out into a separate patch.


Ronnie Sahlberg (2):
  refs.c: add new functions reflog_exists and delete_reflog
  checkout.c: use ref_exists instead of file_exist

 builtin/checkout.c |  8 ++------
 builtin/reflog.c   |  2 +-
 refs.c             | 21 +++++++++++++++------
 refs.h             |  6 ++++++
 t/t1410-reflog.sh  |  8 ++++++++
 5 files changed, 32 insertions(+), 13 deletions(-)

-- 
2.0.0.rc1.354.g7561c2b.dirty

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2014-05-07 20:18 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-05-06 22:45 [PATCH v2 0/2] add a reflog_exists and delete_reflog abstraction Ronnie Sahlberg
2014-05-06 22:45 ` [PATCH v2 1/2] refs.c: add new functions reflog_exists and delete_reflog Ronnie Sahlberg
2014-05-06 22:45 ` [PATCH v2 2/2] checkout.c: use ref_exists instead of file_exist Ronnie Sahlberg
2014-05-07 11:56 ` [PATCH v2 0/2] add a reflog_exists and delete_reflog abstraction Michael Haggerty
2014-05-07 20:17   ` Junio C Hamano

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).