diff options
Diffstat (limited to 'src/checkout.h')
-rw-r--r-- | src/checkout.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/checkout.h b/src/checkout.h index 6d7186860..27e682fe1 100644 --- a/src/checkout.h +++ b/src/checkout.h @@ -9,9 +9,28 @@ #include "git2/checkout.h" #include "iterator.h" +#include "pool.h" #define GIT_CHECKOUT__NOTIFY_CONFLICT_TREE (1u << 12) +typedef struct { + git_repository *repo; + git_diff_list *diff; + git_checkout_opts opts; + bool opts_free_baseline; + char *pfx; + git_index *index; + git_pool pool; + git_vector removes; + git_buf path; + size_t workdir_len; + unsigned int strategy; + int can_symlink; + bool reload_submodules; + size_t total_steps; + size_t completed_steps; +} checkout_data; + /** * Update the working directory to match the target iterator. The * expected baseline value can be passed in via the checkout options @@ -21,4 +40,14 @@ extern int git_checkout_iterator( git_iterator *target, const git_checkout_opts *opts); +int git_checkout__write_content( + checkout_data *data, + const git_oid *oid, + const char *path, + const char *hint_path, + unsigned int mode, + struct stat *st); + +int git_checkout__conflicts(checkout_data *data); + #endif |