我经常收到Octokit::AbuseDetected
错误,因为我的应用程序触发了太多的 API 请求。
我正在使用add_contents
方法将特定目录中的每个文件添加到远程存储库:(一个接一个)
Dir.glob(wrapper + '/**/*') do |path|
octokit_client.create_contents(repo, path.sub("#{wrapper}/", ''), 'adding content', File.read(path), branch: 'master') unless File.directory?(path)
end
有没有办法一次将目录中的所有文件推送到远程存储库,或者先在本地添加内容,然后推送存储库?
不确定 oktokit 库是否可行。要使用 ruby-git 实现此目的,您可以执行以下操作:
Dir.glob(wrapper + '/**/*') do |path|
next if File.directory?(path)
File.write path.sub("#{wrapper}/", ''), File.read(path)
end
g = Git.open('.') # initialize ruby git
g.add
g.commit('adding content')
g.push
无需在源代码中使用ruby-git
进行身份验证。您需要设置 ssh 密钥 - 请阅读生成新的 SSH 密钥并将其添加到 ssh 代理