diff --git a/Octokit.Reactive/Clients/IObservableRepositoryCommitsClients.cs b/Octokit.Reactive/Clients/IObservableRepositoryCommitsClients.cs
index 927b34c0..aee95278 100644
--- a/Octokit.Reactive/Clients/IObservableRepositoryCommitsClients.cs
+++ b/Octokit.Reactive/Clients/IObservableRepositoryCommitsClients.cs
@@ -43,5 +43,14 @@ namespace Octokit.Reactive
/// Used to filter list of commits returned
///
IObservable GetAll(string owner, string name, CommitRequest request);
+
+ ///
+ /// Get the SHA-1 of a commit reference
+ ///
+ /// The owner of the repository
+ /// The name of the repository
+ /// The repository reference
+ ///
+ IObservable Sha1(string owner, string name, string reference);
}
}
diff --git a/Octokit.Reactive/Clients/ObservableRepositoryCommitsClients.cs b/Octokit.Reactive/Clients/ObservableRepositoryCommitsClients.cs
index 7982485e..9aa5d2a6 100644
--- a/Octokit.Reactive/Clients/ObservableRepositoryCommitsClients.cs
+++ b/Octokit.Reactive/Clients/ObservableRepositoryCommitsClients.cs
@@ -73,5 +73,21 @@ namespace Octokit.Reactive
return _connection.GetAndFlattenAllPages(ApiUrls.RepositoryCommits(owner, name),
request.ToParametersDictionary());
}
+
+ ///
+ /// Get the SHA-1 of a commit reference
+ ///
+ /// The owner of the repository
+ /// The name of the repository
+ /// The repository reference
+ ///
+ public IObservable Sha1(string owner, string name, string reference)
+ {
+ Ensure.ArgumentNotNullOrEmptyString(owner, "owner");
+ Ensure.ArgumentNotNullOrEmptyString(name, "name");
+ Ensure.ArgumentNotNullOrEmptyString(reference, "reference");
+
+ return _commit.Sha1(owner, name, reference).ToObservable();
+ }
}
}