ok/jj
1
0
Fork 0
forked from mirrors/jj
jj/cli/tests
Yuya Nishihara c88e69ad6f git_backend: replace git2::Repository with gix::Repository
My gut feeling is that gitoxide aims to be more transparent than libgit2. We'll
need to know more about the underlying Git data model.

Random comments on gix API:

 * gix::Repository provides API similar to git2::Repository, but has less
   "convenient" functions. For example, we need to use .find_object() +
   .try_to/into_<kind>() instead of .find_<kind>().
 * gix::Object, Blob, etc. own raw data as bytes. gix::object and gix::objs
   types provide high-level views on such data.
 * Tree building is pretty low-level compared to git2.
 * gix leverages bstr (i.e. bytes) extensively.

It's probably not difficult to migrate git::import/export_refs(). It might
help eliminate the startup overhead of libssl initialization. The gix-based
GitBackend appears to be a bit faster, but that wouldn't practically matter.

#2316
2023-11-02 19:33:06 +09:00
..
common
test_abandon_command.rs
test_alias.rs
test_branch_command.rs
test_builtin_aliases.rs
test_cat_command.rs
test_checkout.rs
test_chmod_command.rs
test_commit_command.rs
test_commit_template.rs
test_concurrent_operations.rs
test_config_command.rs
test_debug_command.rs
test_describe_command.rs
test_diff_command.rs
test_diffedit_command.rs
test_duplicate_command.rs
test_edit_command.rs git_backend: replace git2::Repository with gix::Repository 2023-11-02 19:33:06 +09:00
test_git_clone.rs
test_git_colocated.rs
test_git_fetch.rs
test_git_import_export.rs
test_git_push.rs
test_git_remotes.rs
test_git_submodule.rs
test_gitignores.rs
test_global_opts.rs
test_immutable_commits.rs
test_init_command.rs
test_interdiff_command.rs
test_log_command.rs
test_move_command.rs
test_new_command.rs
test_next_prev_commands.rs
test_obslog_command.rs
test_operations.rs
test_rebase_command.rs
test_resolve_command.rs
test_restore_command.rs
test_revset_output.rs
test_show_command.rs
test_sparse_command.rs
test_split_command.rs
test_squash_command.rs
test_status_command.rs
test_templater.rs
test_tree_level_conflicts.rs
test_undo.rs
test_unsquash_command.rs
test_untrack_command.rs
test_util_command.rs
test_working_copy.rs
test_workspaces.rs