我希望能够使用git为github上的各个项目克隆问题。我知道我可以克隆代码和Wiki(如果存在)。我找不到克隆问题的方法。
作为一个可行的示例,这是我如何克隆包含项目源代码的主存储库的方法:
git clone https://github.com/kiwix/kiwix-android.git
这适用于该项目的Wiki页面:
git clone https://github.com/kiwix/kiwix-android.wiki.git
我已经尝试了以下方法,看看它是否可以解决问题,但是不起作用
git clone https://github.com/kiwix/kiwix-android.issues.git
Cloning into 'kiwix-android.issues'...
remote: Repository not found.
fatal: repository 'https://github.com/kiwix/kiwix-android.issues.git/' not found
能够克隆问题将是一个很大的帮助,特别是运行脚本来分析各种问题等问题的集合。
答案 0 :(得分:3)
不可能 克隆问题的GitHub存储库。获取问题数据的另一种方法是使用 GitHub API 。
查看文档here,以获取存储库问题。
GET /repos/:owner/:repo/issues
您可以使用API获取问题的数据,将其存储在文件系统中,然后在其中运行必要的脚本。
答案 1 :(得分:0)
由于@ madhu-bhat的建议,我阅读了GitHub's v3 API上的文档,并发现了诸如
的示例 curl -i "https://api.github.com/repos/vmg/redcarpet/issues?state=closed"
然后我对其进行了修改,以获取我们其中一个项目的未解决问题:
curl -i "https://api.github.com/repos/kiwix/kiwix-android/issues?state=open"
这种方法可以满足我的需要,并允许我按状态进行过滤,等等。为StackOverflow +1。
答案 2 :(得分:0)
Kamino 需要 Chrome 浏览器,而我不愿意使用扩展程序。此外,我想将问题从私有存储库 A
克隆到公共存储库 B
,但我无法使用 copy issue
按钮执行此操作。
因此编写了一些 Python 代码,将所有未解决的问题从 repo A
复制到 repo B
。它位于此处:https://github.com/a-t-0/batch-copy-issues,您可以将其用作:
git clone git@github.com:a-t-0/batch-copy-issues.git
cd batch-copy-issues
conda env create --file environment.yml
conda activate batch_copy_issues
python -m code.project1.src
然后它会询问您要从中复制问题的 GitHub 用户名和存储库,以及要将它们复制到的 GitHub 用户和存储库。接下来,它获取一个浏览器控制器,确保安装了 Firefox,并开始将未解决问题的标签、标题和评论从存储库 A
复制到存储库 B
。你可以看它抄东西。
请注意,这不是问题的确切“克隆”,因为它没有正确保留“谁说了什么”,因为所有评论都将由复制问题的人撰写。该软件将能够包含一个小脚注,上面写着 originally said by X at time Y.
,但目前尚未实现。