4

したがって、次を使用してレポからコミットを取得できます。

commits = Octokit.commits('tansaku/gitimmersion')

しかし、コミットの日付を取得する方法がわかりません。個々のコミットを pp すると、日付が存在することがわかります。

#<Sawyer::Resource:0x007fb045935358 @_agent=<Sawyer::Agent https://api.github.com/>, @_fields=#<Set: {:author, :committer, :message, :tree, :comment_count}>, @_metaclass=#<Class:#<Sawyer::Resource:0x007fb045935358>>, @_rels=#<Sawyer::Relation::Map: [:self]>, @attrs= {:author=> #<Sawyer::Resource:0x007fb045932590 @_agent=<Sawyer::Agent https://api.github.com/>, @_fields=#<Set: {:name, :email, :date}>, @_metaclass=#<Class:#<Sawyer::Resource:0x007fb045932590>>, @_rels=#<Sawyer::Relation::Map: []>, @attrs= {:name=>"Sam Joseph", :email=>"tansaku@gmail.com", :date=>2014-03-10 14:35:53 UTC}>, :committer=> #<Sawyer::Resource:0x007fb0459302b8 @_agent=<Sawyer::Agent https://api.github.com/>, @_fields=#<Set: {:name, :email, :date}>, @_metaclass=#<Class:#<Sawyer::Resource:0x007fb0459302b8>>, @_rels=#<Sawyer::Relation::Map: []>, @attrs= {:name=>"Sam Joseph", :email=>"tansaku@gmail.com", :date=>2014-03-10 14:35:53 UTC}>, :message=>"using command lines", :tree=> #<Sawyer::Resource:0x007fb045927aa0 @_agent=<Sawyer::Agent https://api.github.com/>, @_fields=#<Set: {:sha}>, @_metaclass=#<Class:#<Sawyer::Resource:0x007fb045927aa0>>, @_rels=#<Sawyer::Relation::Map: [:self]>, @attrs={:sha=>"11b345c2fc315b5f7ae6db2e0f6b0570780c20d1"}>, :comment_count=>0}>

しかし、これらの Sawyer オブジェクトからそれらを抽出することはできないようです。

1.9.3-p392 :043 > pp commits[0].author.date nil => nil

1.9.3-p392 :047 > pp commits[0].committer.date nil => nil

明らかに、私は本当に愚かですが、Sawyer オブジェクトからこれらの日付を取得する方法を誰かが説明できますか?

よろしくお願いします CHEERS> SAM

4

1 に答える 1

3

これはあなたのジレンマの解決策になるでしょうか?

commits[0].commit.author[:date]
=> 2014-03-10 14:35:53 UTC
commits[0].commit.committer[:date]
=> 2014-03-10 14:35:53 UTC

于 2014-03-17T23:00:22.987 に答える