[PATCH v6 23/25] files_log_ref_write: new function
- From
Michael Haggerty <mhagger@alum.mit.edu>
- Date
- Nov 3, 2015, 07:40 UTC
- Message-ID
- <5b305c7ef25dc53e5b6ee11169c16fdbeda4ad86.1446534991.git.mhagger@alum.mit.edu>
- In-Reply-To
- <cover.1446534991.git.mhagger@alum.mit.edu>
From: David Turner <dturner@twopensource.com>
Because HEAD and stash are per-worktree, every refs backend needs to go through the files backend to write these refs.
So create a new function, files_log_ref_write, and add it to refs/refs-internal.h. Later, we will use this to handle reflog updates for per-worktree symbolic refs (HEAD).
Signed-off-by: David Turner <dturner@twopensource.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> --- refs/files-backend.c | 8 ++++++++ refs/refs-internal.h | 4 ++++ 2 files changed, 12 insertions(+)
diff --git a/refs/files-backend.c b/refs/files-backend.c index 7dc68b8..20e2924 100644 --- a/refs/files-backend.c +++ b/refs/files-backend.c @@ -2733,6 +2733,14 @@ static int log_ref_write(const char *refname, const unsigned char *old_sha1, const unsigned char *new_sha1, const char *msg, int flags, struct strbuf *err) { + return files_log_ref_write(refname, old_sha1, new_sha1, msg, flags, + err); +} + +int files_log_ref_write(const char *refname, const unsigned char *old_sha1, + const unsigned char *new_sha1, const char *msg, + int flags, struct strbuf *err) +{ struct strbuf sb = STRBUF_INIT; int ret = log_ref_write_1(refname, old_sha1, new_sha1, msg, &sb, flags, err); diff --git a/refs/refs-internal.h b/refs/refs-internal.h index d854d9e..5f447d4 100644 --- a/refs/refs-internal.h +++ b/refs/refs-internal.h @@ -157,4 +157,8 @@ extern int should_autocreate_reflog(const char *refname); */ int copy_reflog_msg(char *buf, const char *msg); +int files_log_ref_write(const char *refname, const unsigned char *old_sha1, + const unsigned char *new_sha1, const char *msg, + int flags, struct strbuf *err); + #endif /* REFS_REFS_INTERNAL_H */
-- 2.6.2