This version rebases on top of pu. Mainly, this just moves a couple
of methods to the backend.
I added support for long symrefs to the lmdb backend. Peff added this
to the files backend in pu, and there's a test for it.
I cleaned up some formatting (long lines), and moved one patch to put
it closer to its related patches. I added a comment to a bit I found confusing
when re-reading the patch (in the lmdb backend patch).
I re-ran the tests under lmdb, and everything that passed last time
passes this time.
David Turner (24):
refs: make repack_without_refs and is_branch public
refs-be-files.c: add method for for_each_reftype_...
refs-be-files.c: add do_for_each_per_worktree_ref
refs.c: move refname_is_safe to the common code
refs.h: document make refname_is_safe and add it to header
refs.c: move copy_msg to the common code
refs.c: move peel_object to the common code
refs.c: move should_autocreate_reflog to common code
refs.c: add ref backend init function
refs.c: add methods for reflog
refs-be-files.c: add method to expire reflogs
refs.c: add method for initial ref transaction commit
initdb: move safe_create_dir into common code
refs.c: add method for initializing refs db
refs.c: make struct ref_transaction generic
refs-be-files.c: add method to rename refs
run-command: track total number of commands run
refs: move some defines from refs-be-files.c to refs.h
refs: make some files backend functions public
refs: break out a ref conflict check
refs: allow ref backend to be set for clone
refs: add register_refs_backend
refs: add LMDB refs backend
refs: tests for db backend
Ronnie Sahlberg (19):
refs.c: create a public version of verify_refname_available
refs-be-files.c: rename refs to refs-be-files
refs.c: add a new refs.c file to hold all common refs code
refs.c: move update_ref to refs.c
refs.c: move delete_ref and delete_refs to the common code
refs.c: move read_ref_at to the common refs file
refs.c: move the hidden refs functions to the common code
refs.c: move dwim and friend functions to the common refs code
refs.c: move warn_if_dangling_symref* to the common code
refs.c: move read_ref, read_ref_full and ref_exists to the common code
refs.c: move resolve_refdup to common
refs.c: move check_refname_format to the common code
refs.c: move is_branch to the common code
refs.c: move prettify_refname to the common code
refs.c: move ref iterators to the common code
refs.c: move head_ref_namespaced to the common code
refs-be-files.c: add a backend method structure with transaction
functions
refs-be-files.c: add methods for misc ref operations
refs-be-files.c: add methods for the ref iterators
.gitignore | 1 +
Documentation/git-clone.txt | 4 +
Documentation/git-init-db.txt | 2 +-
Documentation/git-init.txt | 6 +
Documentation/technical/refs-be-lmdb.txt | 39 +
Makefile | 13 +
builtin/clone.c | 27 +-
builtin/init-db.c | 39 +-
builtin/submodule--helper.c | 5 +-
cache.h | 13 +
config.c | 27 +
configure.ac | 33 +
contrib/workdir/git-new-workdir | 2 +
environment.c | 1 +
path.c | 12 +
refs-be-files.c | 3757 +++++++++++++++++++++
refs-be-lmdb.c | 1984 +++++++++++
refs.c | 5329 ++++++------------------------
refs.h | 282 +-
run-command.c | 2 +
run-command.h | 1 +
setup.c | 28 +-
t/t1460-refs-be-db.sh | 1103 +++++++
t/t1470-refs-be-db-reflog.sh | 353 ++
test-refs-be-lmdb.c | 68 +
25 files changed, 8716 insertions(+), 4415 deletions(-)
create mode 100644 Documentation/technical/refs-be-lmdb.txt
create mode 100644 refs-be-files.c
create mode 100644 refs-be-lmdb.c
create mode 100755 t/t1460-refs-be-db.sh
create mode 100755 t/t1470-refs-be-db-reflog.sh
create mode 100644 test-refs-be-lmdb.c
--
2.4.2.644.g97b850b-twtrsrc
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html