我正在浏览next.js存储库,并注意到这个函数从GitHub下载并提取模板,使用tar:
export async function downloadAndExtractExample(
root: string,
name: string
): Promise<void> {
return await promisePipe(
got.stream('https://codeload.github.com/zeit/next.js/tar.gz/canary'),
tar.extract({ cwd: root, strip: 3 }, [`next.js-canary/examples/${name}`])
)
}
我在StackOverflow上搜索,只找到了这个:
这是一个解释如何从GitHub获取tar.gz文件的帖子,但是没有提到"codeload"子域名。 它与"api"有什么不同?
codeload.github.com
是否会得到维护吗? - Paul Razvan Bergcodeload.github.com
URL可能会出现某些边缘情况或其他行为,而API可以优雅地处理这些情况,例如ref名称等。 - bk2204