Commit 824cb2d5 by Russell Belfer Committed by Ben Straub

Updates to reset.h

parent 3f63cc9e
...@@ -16,16 +16,26 @@ ...@@ -16,16 +16,26 @@
GIT_BEGIN_DECL GIT_BEGIN_DECL
/** /**
* Kinds of reset operation
*/
typedef enum {
GIT_RESET_SOFT = 1, /** Move the head to the given commit */
GIT_RESET_MIXED = 2, /** SOFT plus reset index to the commit */
GIT_RESET_HARD = 3, /** MIXED plus changes in working tree discarded */
} git_reset_t;
/**
* Sets the current head to the specified commit oid and optionally * Sets the current head to the specified commit oid and optionally
* resets the index and working tree to match. * resets the index and working tree to match.
* *
* When specifying a Soft kind of reset, the head will be moved to the commit. * SOFT reset means the head will be moved to the commit.
* *
* Specifying a Mixed kind of reset will trigger a Soft reset and the index will * MIXED reset will trigger a SOFT reset, plus the index will be replaced
* be replaced with the content of the commit tree. * with the content of the commit tree.
* *
* Specifying a Hard kind of reset will trigger a Mixed reset and the working * HARD reset will trigger a MIXED reset and the working directory will be
* directory will be replaced with the content of the index. * replaced with the content of the index. (Untracked and ignored files
* will be left alone, however.)
* *
* TODO: Implement remaining kinds of resets. * TODO: Implement remaining kinds of resets.
* *
...@@ -38,9 +48,10 @@ GIT_BEGIN_DECL ...@@ -38,9 +48,10 @@ GIT_BEGIN_DECL
* *
* @param reset_type Kind of reset operation to perform. * @param reset_type Kind of reset operation to perform.
* *
* @return GIT_SUCCESS or an error code * @return 0 on success or an error code < 0
*/ */
GIT_EXTERN(int) git_reset(git_repository *repo, git_object *target, git_reset_type reset_type); GIT_EXTERN(int) git_reset(
git_repository *repo, git_object *target, git_reset_t reset_type);
/** @} */ /** @} */
GIT_END_DECL GIT_END_DECL
......
...@@ -175,13 +175,6 @@ typedef enum { ...@@ -175,13 +175,6 @@ typedef enum {
GIT_BRANCH_REMOTE = 2, GIT_BRANCH_REMOTE = 2,
} git_branch_t; } git_branch_t;
/** Kinds of reset operation. */
typedef enum {
GIT_RESET_SOFT = 1,
GIT_RESET_MIXED = 2,
GIT_RESET_HARD = 3,
} git_reset_type;
/** Valid modes for index and tree entries. */ /** Valid modes for index and tree entries. */
typedef enum { typedef enum {
GIT_FILEMODE_NEW = 0000000, GIT_FILEMODE_NEW = 0000000,
......
...@@ -63,7 +63,7 @@ cleanup: ...@@ -63,7 +63,7 @@ cleanup:
int git_reset( int git_reset(
git_repository *repo, git_repository *repo,
git_object *target, git_object *target,
git_reset_type reset_type) git_reset_t reset_type)
{ {
git_object *commit = NULL; git_object *commit = NULL;
git_index *index = NULL; git_index *index = NULL;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment