From 4291ad078128003ad6d4ac6fb58244f3343ad87a Mon Sep 17 00:00:00 2001 From: Ben Straub Date: Mon, 15 Apr 2013 11:42:34 -0700 Subject: [PATCH] Reintroduce git_revparse_single. --- include/git2/revparse.h | 14 ++++++++++++++ src/revparse.c | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) 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;