10 * Create new notes commit from the given notes tree
12 * Properties of the created commit:
13 * - tree: the result of converting t to a tree object with write_notes_tree().
14 * - parents: the given parents OR (if NULL) the commit referenced by t->ref.
15 * - author/committer: the default determined by commit_tree().
16 * - commit message: msg
18 * The resulting commit SHA1 is stored in result_sha1.
20 void create_notes_commit(struct notes_tree
*t
, struct commit_list
*parents
,
21 const char *msg
, size_t msg_len
,
22 struct object_id
*result_oid
);
24 void commit_notes(struct notes_tree
*t
, const char *msg
);
26 enum notes_merge_strategy
{
27 NOTES_MERGE_RESOLVE_MANUAL
= 0,
28 NOTES_MERGE_RESOLVE_OURS
,
29 NOTES_MERGE_RESOLVE_THEIRS
,
30 NOTES_MERGE_RESOLVE_UNION
,
31 NOTES_MERGE_RESOLVE_CAT_SORT_UNIQ
34 struct notes_rewrite_cfg
{
35 struct notes_tree
**trees
;
38 combine_notes_fn combine
;
39 struct string_list
*refs
;
44 int parse_notes_merge_strategy(const char *v
, enum notes_merge_strategy
*s
);
45 struct notes_rewrite_cfg
*init_copy_notes_for_rewrite(const char *cmd
);
46 int copy_note_for_rewrite(struct notes_rewrite_cfg
*c
,
47 const struct object_id
*from_obj
, const struct object_id
*to_obj
);
48 void finish_copy_notes_for_rewrite(struct notes_rewrite_cfg
*c
, const char *msg
);