我将我的谷歌代码问题导出为 CSV(遗憾的是不包含评论),然后使用以下脚本将它们导入 github:
#!/usr/bin/env ruby
# Based on https://gist.github.com/visnup/1117145
require 'rubygems'
require 'FasterCSV'
require 'httparty'
require 'json'
github_user = 'xxx'
github_repo = 'xxx'
gcode_repo = 'xxx'
class GitHub
include HTTParty
base_uri 'https://api.github.com'
basic_auth "xxx", "xxx"
end
FasterCSV.open ARGV.shift, :headers => true do |csv|
csv.each do |r|
# title, body, assignee, milestone, labels
body = {
:title => r['Summary'],
:body => "Issue Migrated from http://code.google.com/p/#{gcode_repo}/issues/detail?id=#{r['ID']}",
:labels => [ "gcode"]
}
issue = GitHub.post "/repos/#{github_user}/#{github_repo}/issues", :body => JSON.generate(body)
p issue
end
end
替换xxx
为适合您使用的值,并确保首先在测试存储库上运行它。
然后我用指向 github 问题列表的注释关闭了谷歌代码中的所有问题。使用 Google 代码中管理菜单的高级选项卡,我将问题选项卡替换为一个 wiki 页面,该页面也将人们指向 github 问题列表。