diff options
-rw-r--r-- | include/git2/revparse.h | 14 | ||||
-rw-r--r-- | src/revparse.c | 2 |
2 files changed, 15 insertions, 1 deletions
diff --git a/include/git2/revparse.h b/include/git2/revparse.h index 7fe910b45..2bbbaa5e1 100644 --- a/include/git2/revparse.h +++ b/include/git2/revparse.h @@ -20,6 +20,20 @@ */ GIT_BEGIN_DECL +/** + * + * Find a single object, as specified by a revision string. See `man gitrevisions`, + * or http://git-scm.com/docs/git-rev-parse.html#_specifying_revisions for + * information on the syntax accepted. + * + * @param out pointer to output object + * @param repo the repository to search in + * @param spec the textual specification for an object + * @return 0 on success, GIT_ENOTFOUND, GIT_EAMBIGUOUS, GIT_EINVALIDSPEC or an error code + */ +GIT_EXTERN(int) git_revparse_single(git_object **out, git_repository *repo, + const char *spec); + /** * Revparse flags. These indicate the intended behavior of the spec passed to diff --git a/src/revparse.c b/src/revparse.c index 7842c49b7..5f591406e 100644 --- a/src/revparse.c +++ b/src/revparse.c @@ -722,7 +722,7 @@ static int ensure_left_hand_identifier_is_not_known_yet(git_object *object, git_ return GIT_EINVALIDSPEC; } -static int git_revparse_single(git_object **out, git_repository *repo, const char *spec) +int git_revparse_single(git_object **out, git_repository *repo, const char *spec) { size_t pos = 0, identifier_len = 0; int error = -1, n; |