checkout.h 855 Bytes
Newer Older
1
/*
Edward Thomson committed
2
 * Copyright (C) the libgit2 contributors. All rights reserved.
3 4 5 6 7 8 9 10 11 12
 *
 * This file is part of libgit2, distributed under the GNU GPL v2 with
 * a Linking Exception. For full terms see the included COPYING file.
 */
#ifndef INCLUDE_checkout_h__
#define INCLUDE_checkout_h__

#include "git2/checkout.h"
#include "iterator.h"

13
#define GIT_CHECKOUT__NOTIFY_CONFLICT_TREE (1u << 12)
14

15 16 17 18 19 20 21
/** Internal structure; this is exposed in future versions. */
typedef struct {
	size_t mkdir_calls;
	size_t stat_calls;
	size_t chmod_calls;
} git_checkout_perfdata;

22
/**
23 24 25
 * Update the working directory to match the target iterator.  The
 * expected baseline value can be passed in via the checkout options
 * or else will default to the HEAD commit.
26
 */
27 28
extern int git_checkout_iterator(
	git_iterator *target,
29
	git_index *index,
30
	const git_checkout_options *opts);
31 32

#endif