Ruby 获取为拉取请求列表添加/删除的行
假设我有一个拉请求ID列表,如下面的例子 如果我只想为每个ID设置两个变量:“添加行”和“删除行”。如何使用octokit为每个pull请求获取这些变量 我想我会在ruby中这样开始:Ruby 获取为拉取请求列表添加/删除的行,ruby,git,octokit,Ruby,Git,Octokit,假设我有一个拉请求ID列表,如下面的例子 如果我只想为每个ID设置两个变量:“添加行”和“删除行”。如何使用octokit为每个pull请求获取这些变量 我想我会在ruby中这样开始: require 'octokit' require 'csv' list = [2825, 2119, 2629] output = [] for id in list output.push(Octokit.pull_request('rubinius/rubinius', id, options =
require 'octokit'
require 'csv'
list = [2825, 2119, 2629]
output = []
for id in list
output.push(Octokit.pull_request('rubinius/rubinius', id, options = {}))
end
begin
file = File.open("/Users/Username/Desktop/pr_mining_output.txt", "w")
file.write(output)
rescue IOError => e
#some error occur, dir not writable etc.
ensure
file.close unless file == nil
end
但这似乎只是覆盖了文件,只给了我一个结果而不是3个(或者无论列表中有多少个对象)。我如何才能让它给我所有3个的数据?需要“octokit”
require 'octokit'
require 'csv'
client = Octokit::Client.new :login => 'mylogin', :password => 'mypass'
repo = 'rubinius/rubinius'
numbers = [2825, 2119, 2629]
CSV.open('results.csv', 'w') do |csv|
for number in numbers
begin
pull = client.pull_request(repo, number)
csv << [pull.number, pull.additions, pull.deletions]
rescue Octokit::NotFound
end
end
end
需要“csv”
client=Octokit::client.new:login=>'mylogin',:password=>'mypass'
回购协议='rubinius/rubinius'
数字=[282521192629]
CSV.open('results.CSV','w')do | CSV|
数字中的数字
开始
pull=客户。pull_请求(回购,编号)
csv需要“octokit”
需要“csv”
client=Octokit::client.new:login=>username',:password=>password
回购协议='rubinius/rubinius'
numbers=CSV.read('/Users/User/Downloads/numbers.CSV')。展平
CSV.open('results.CSV','w')do | CSV|
数字中的数字
开始
pull=客户。pull_请求(回购,编号)
csv这非常有效,除非它遇到一个已转换为问题的请求ID。然后它给出一个404,不会继续。是否有方法确保它继续到列表中的下一个。例如,尝试数字=[642,630,623]若要复制此错误。@histelheim,请处理Octokit::NotFound
。请参阅更新的代码。
require 'octokit'
require 'csv'
client = Octokit::Client.new :login => 'username', :password => 'password'
repo = 'rubinius/rubinius'
numbers = CSV.read('/Users/User/Downloads/numbers.csv').flatten
CSV.open('results.csv', 'w') do |csv|
for number in numbers
begin
pull = client.pull_request(repo, number)
csv << [pull.number, pull.additions, pull.deletions]
rescue
csv << [number, 0, 0]
next
end
end
end