| /* |
| * Copyright (C) 2009-2012 the libgit2 contributors |
| * |
| * 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_git_reset_h__ |
| #define INCLUDE_git_reset_h__ |
| |
| /** |
| * @file git2/reset.h |
| * @brief Git reset management routines |
| * @ingroup Git |
| * @{ |
| */ |
| GIT_BEGIN_DECL |
| |
| /** |
| * Sets the current head to the specified commit oid and optionally |
| * resets the index and working tree to match. |
| * |
| * When specifying a Soft kind of reset, the head will be moved to the commit. |
| * |
| * Specifying a Mixed kind of reset will trigger a Soft reset and the index will |
| * be replaced with the content of the commit tree. |
| * |
| * Specifying a Hard kind of reset will trigger a Mixed reset and the working |
| * directory will be replaced with the content of the index. |
| * |
| * TODO: Implement remaining kinds of resets. |
| * |
| * @param repo Repository where to perform the reset operation. |
| * |
| * @param target Object to which the Head should be moved to. This object |
| * must belong to the given `repo` and can either be a git_commit or a |
| * git_tag. When a git_tag is being passed, it should be dereferencable |
| * to a git_commit which oid will be used as the target of the branch. |
| * |
| * @param reset_type Kind of reset operation to perform. |
| * |
| * @return GIT_SUCCESS or an error code |
| */ |
| GIT_EXTERN(int) git_reset(git_repository *repo, git_object *target, git_reset_type reset_type); |
| |
| /** @} */ |
| GIT_END_DECL |
| #endif |