我正在学习 grit (版本 2.4.1)。以下是我的基本代码:
#!/usr/bin/env ruby -wKU
require "grit"
repo = Grit::Repo.new("./myproject")
p repo.commits
运行这段代码会给我带来很多警告。正如用户@Dogbert所指出的,这个GitHub差异帮助我消除了其中一些问题,现在我只得到以下警告信息: 更新 将diff-lcs (v1.1.2)中第266和303行的
hunk = hunk.map { |block| yield block }
更改为hunk = hunk.map { |blk| yield block }
已经解决了这两个警告。/Users/mircospino/.rvm/gems/ruby-1.9.2-p180/gems/diff-lcs-1.1.2/lib/diff/lcs.rb:266: warning: shadowing outer local variable - block
/Users/mircospino/.rvm/gems/ruby-1.9.2-p180/gems/diff-lcs-1.1.2/lib/diff/lcs.rb:303: warning: shadowing outer local variable - block
更新2
正如用户@injekt在这里所说,process.rb将在下一个版本中被删除。这将消除以下问题:
/Users/mircospino/.rvm/gems/ruby-1.9.2-p180/gems/grit-2.4.1/lib/grit/process.rb:289: warning: method redefined; discarding old spawn
/Users/mircospino/.rvm/gems/ruby-1.9.2-p180/gems/grit-2.4.1/lib/grit/process.rb:221: warning: previous definition of spawn was here
更新3
感谢用户@DogBert...
/Users/mircospino/.rvm/gems/ruby-1.9.2-p180/gems/diff-lcs-1.1.2/lib/diff/lcs/hunk.rb:69: warning: method redefined; discarding old flag_context=
通过更改diff-lcs gem中hunk.rb的第68行,从:attr_accessor
更改为:attr_reader
,使问题得到解决。
现在我有一个"stackoverflow meta"的问题:我该怎么做?
accessor
改为reader
。 - Dogbert