Merge branch 'eb/hash-transition'
Work to support a repository that work with both SHA-1 and SHA-256 hash algorithms has started. * eb/hash-transition: (30 commits) t1016-compatObjectFormat: add tests to verify the conversion between objects t1006: test oid compatibility with cat-file t1006: rename sha1 to oid test-lib: compute the compatibility hash so tests may use it builtin/ls-tree: let the oid determine the output algorithm object-file: handle compat objects in check_object_signature tree-walk: init_tree_desc take an oid to get the hash algorithm builtin/cat-file: let the oid determine the output algorithm rev-parse: add an --output-object-format parameter repository: implement extensions.compatObjectFormat object-file: update object_info_extended to reencode objects object-file-convert: convert commits that embed signed tags object-file-convert: convert commit objects when writing object-file-convert: don't leak when converting tag objects object-file-convert: convert tag objects when writing object-file-convert: add a function to convert trees between algorithms object: factor out parse_mode out of fast-import and tree-walk into in object.h cache: add a function to read an OID of a specific algorithm tag: sign both hashes commit: export add_header_signature to support handling signatures on tags ...
This commit is contained in:
@@ -24,6 +24,7 @@ struct name_entry {
|
||||
* A semi-opaque data structure used to maintain the current state of the walk.
|
||||
*/
|
||||
struct tree_desc {
|
||||
const struct git_hash_algo *algo;
|
||||
/*
|
||||
* pointer into the memory representation of the tree. It always
|
||||
* points at the current entry being visited.
|
||||
@@ -83,9 +84,11 @@ int update_tree_entry_gently(struct tree_desc *);
|
||||
* size parameters are assumed to be the same as the buffer and size
|
||||
* members of `struct tree`.
|
||||
*/
|
||||
void init_tree_desc(struct tree_desc *desc, const void *buf, unsigned long size);
|
||||
void init_tree_desc(struct tree_desc *desc, const struct object_id *tree_oid,
|
||||
const void *buf, unsigned long size);
|
||||
|
||||
int init_tree_desc_gently(struct tree_desc *desc, const void *buf, unsigned long size,
|
||||
int init_tree_desc_gently(struct tree_desc *desc, const struct object_id *oid,
|
||||
const void *buf, unsigned long size,
|
||||
enum tree_desc_flags flags);
|
||||
|
||||
/*
|
||||
|
||||
Reference in New Issue
Block a user