Module: Octokit::Client::Commits
- Included in:
- Octokit::Client
- Defined in:
- lib/octokit/client/commits.rb
Overview
Methods for the Commits API
Instance Method Summary collapse
-
#commit(repo, sha, options = {}) ⇒ Sawyer::Resource
Get a single commit.
-
#commits(*args) ⇒ Array<Sawyer::Resource>
(also: #list_commits)
List commits.
-
#commits_before(*args) ⇒ Array<Sawyer::Resource>
Get commits before a specified date.
-
#commits_between(*args) ⇒ Array<Sawyer::Resource>
Get commits made between two nominated dates.
-
#commits_on(*args) ⇒ Array<Sawyer::Resource>
Get commits on a specified date.
-
#commits_since(*args) ⇒ Array<Sawyer::Resource>
Get commits after a specified date.
-
#compare(repo, start, endd, options = {}) ⇒ Sawyer::Resource
Compare two commits.
-
#create_commit(repo, message, tree, parents = nil, options = {}) ⇒ Sawyer::Resource
Create a commit.
-
#git_commit(repo, sha, options = {}) ⇒ Sawyer::Resource
Get a detailed git commit.
-
#merge(repo, base, head, options = {}) ⇒ Sawyer::Resource
Merge a branch or sha.
Instance Method Details
#commit(repo, sha, options = {}) ⇒ Sawyer::Resource
Get a single commit
143 144 145 |
# File 'lib/octokit/client/commits.rb', line 143 def commit(repo, sha, = {}) get "#{Repository.path repo}/commits/#{sha}", end |
#commits(repo, sha_or_branch, options = {}) ⇒ Array<Sawyer::Resource> #commits(repo, options = {}) ⇒ Array<Sawyer::Resource> Also known as: list_commits
List commits
23 24 25 26 27 28 |
# File 'lib/octokit/client/commits.rb', line 23 def commits(*args) arguments = Octokit::RepoArguments.new(args) sha_or_branch = arguments.pop arguments.[:sha] = sha_or_branch if sha_or_branch paginate "#{Repository.new(arguments.repo).path}/commits", arguments. end |
#commits_before(repo, date, options = {}) ⇒ Array<Sawyer::Resource> #commits_before(repo, date, sha_or_branch, options = {}) ⇒ Array<Sawyer::Resource>
Get commits before a specified date
71 72 73 74 75 76 77 78 79 |
# File 'lib/octokit/client/commits.rb', line 71 def commits_before(*args) arguments = Octokit::RepoArguments.new(args) date = parse_date(arguments.shift) params = arguments. params.merge!(until: iso8601(date)) sha_or_branch = arguments.pop params[:sha] = sha_or_branch if sha_or_branch commits(arguments.repo, params) end |
#commits_between(repo, start_date, end_date, options = {}) ⇒ Array<Sawyer::Resource> #commits_between(repo, start_date, end_date, sha_or_branch, options = {}) ⇒ Array<Sawyer::Resource>
Get commits made between two nominated dates
122 123 124 125 126 127 128 129 130 131 132 133 134 135 |
# File 'lib/octokit/client/commits.rb', line 122 def commits_between(*args) arguments = Octokit::RepoArguments.new(args) date = parse_date(arguments.shift) end_date = parse_date(arguments.shift) if date > end_date raise ArgumentError, "Start date #{date} does not precede #{end_date}" end params = arguments. params.merge!(since: iso8601(date), until: iso8601(end_date)) sha_or_branch = arguments.pop params[:sha] = sha_or_branch if sha_or_branch commits(arguments.repo, params) end |
#commits_on(repo, date, options = {}) ⇒ Array<Sawyer::Resource> #commits_on(repo, date, sha_or_branch, options = {}) ⇒ Array<Sawyer::Resource>
Get commits on a specified date
95 96 97 98 99 100 101 102 103 104 |
# File 'lib/octokit/client/commits.rb', line 95 def commits_on(*args) arguments = Octokit::RepoArguments.new(args) date = parse_date(arguments.shift) params = arguments. end_date = date + 1 params.merge!(since: iso8601(date), until: iso8601(end_date)) sha_or_branch = arguments.pop params[:sha] = sha_or_branch if sha_or_branch commits(arguments.repo, params) end |
#commits_since(repo, date, options = {}) ⇒ Array<Sawyer::Resource> #commits_since(repo, date, sha_or_branch, options = {}) ⇒ Array<Sawyer::Resource>
Get commits after a specified date
47 48 49 50 51 52 53 54 55 |
# File 'lib/octokit/client/commits.rb', line 47 def commits_since(*args) arguments = Octokit::RepoArguments.new(args) date = parse_date(arguments.shift) params = arguments. params.merge!(since: iso8601(date)) sha_or_branch = arguments.pop params[:sha] = sha_or_branch if sha_or_branch commits(arguments.repo, params) end |
#compare(repo, start, endd, options = {}) ⇒ Sawyer::Resource
Compare two commits
When using auto_pagination, commits from all pages will be concatenated into the commits
attribute of the first page’s response.
192 193 194 195 196 |
# File 'lib/octokit/client/commits.rb', line 192 def compare(repo, start, endd, = {}) paginate "#{Repository.path repo}/compare/#{start}...#{endd}", do |data, last_response| data.commits.concat last_response.data.commits end end |
#create_commit(repo, message, tree, parents = nil, options = {}) ⇒ Sawyer::Resource
Create a commit
Optionally pass author
and committer
hashes in options
if you’d like manual control over those parameters. If absent, details will be inferred from the authenticated user. See <a href=“developer.github.com/v3/git/commits/”>GitHub’s documentation</a> for details about how to format committer identities.
176 177 178 179 180 |
# File 'lib/octokit/client/commits.rb', line 176 def create_commit(repo, , tree, parents = nil, = {}) params = { message: , tree: tree } params[:parents] = [parents].flatten if parents post "#{Repository.path repo}/git/commits", .merge(params) end |
#git_commit(repo, sha, options = {}) ⇒ Sawyer::Resource
Get a detailed git commit
153 154 155 |
# File 'lib/octokit/client/commits.rb', line 153 def git_commit(repo, sha, = {}) get "#{Repository.path repo}/git/commits/#{sha}", end |
#merge(repo, base, head, options = {}) ⇒ Sawyer::Resource
Merge a branch or sha
206 207 208 209 210 211 212 |
# File 'lib/octokit/client/commits.rb', line 206 def merge(repo, base, head, = {}) params = { base: base, head: head }.merge() post "#{Repository.path repo}/merges", params end |