我经常收到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
有没有办法将目录中的所有文件一次推送到远程仓库或首先在本地添加内容然后推送回购?
答案 0 :(得分:0)
不确定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-keys - 阅读Generating a new SSH key and adding it to the ssh-agent