MCPcopy Create free account
hub / github.com/git/git / reftable_be_copy_ref

Function reftable_be_copy_ref

refs/reftable-backend.c:1973–2001  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1971}
1972
1973static int reftable_be_copy_ref(struct ref_store *ref_store,
1974 const char *oldrefname,
1975 const char *newrefname,
1976 const char *logmsg)
1977{
1978 struct reftable_ref_store *refs =
1979 reftable_be_downcast(ref_store, REF_STORE_WRITE, "copy_ref");
1980 struct write_copy_arg arg = {
1981 .refs = refs,
1982 .oldname = oldrefname,
1983 .newname = newrefname,
1984 .logmsg = logmsg,
1985 };
1986 int ret;
1987
1988 ret = refs->err;
1989 if (ret < 0)
1990 goto done;
1991
1992 ret = backend_for(&arg.be, refs, newrefname, &newrefname, 1);
1993 if (ret)
1994 goto done;
1995 ret = reftable_stack_add(arg.be->stack, &write_copy_table, &arg,
1996 REFTABLE_STACK_NEW_ADDITION_RELOAD);
1997
1998done:
1999 assert(ret != REFTABLE_API_ERROR);
2000 return ret;
2001}
2002
2003struct reftable_reflog_iterator {
2004 struct ref_iterator base;

Callers

nothing calls this directly

Calls 3

reftable_be_downcastFunction · 0.85
backend_forFunction · 0.85
reftable_stack_addFunction · 0.85

Tested by

no test coverage detected