git - 如何使用Github Release API 发布没有源代码的版本?

标签 git github github-api

我正在使用 blow 命令在 Github 存储库上发布一个版本:

curl -X POST -H "Authorization: token xxxxxxxxx"  -d '{"tag_name": "test", "name":"release-0.0.1","body":"this is a test release"}'  https://api.github.com/repos/xxxxxx

我可以看到创建了一个新版本。但是下面有两个下载按钮:

Source code (zip)
Source code (tar.gz)

如何在没有源代码的情况下发布?

如果无法删除源代码附件,如何上传其他二进制文件?我尝试使用 API Upload a release asset像这样:POST https://<upload_url>/repos/:owner/:repo/releases/:id/assets?name=foo.zip ,它成功返回,但我在 Github 发布选项卡上找不到二进制文件。

最佳答案

您可以使用 .gitattributes 在自动生成中控制 sorcecode 存档的内容文件(并使其成为您存储库的一部分)。

添加如下行:

src export-ignore

将目录“src”从生成的源包中排除。在内部,github 使用“git archive”根据标签创建包——“git archive”可以通过“.gitattributes”控制。

不知道是否可以完全避免生成源码包——但这至少是一种控制源码包内容的变通方法

关于git - 如何使用Github Release API 发布没有源代码的版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45240336/

相关文章:

Git pull 但从不推送文件

Github: pull 请求后清理 fork

GitHub Api 下载 zip 或 tarball 链接

jenkins - 超出 GitHub API 速率限制

git 卡在分离头中 - 无法恢复到分支中的上一个文件

git - 从提交消息 git 中获取提交 ID

git - 检查git存储库是否存在

python - 解决 "django.db.utils.ProgrammingError: permission denied for relation django_migrations"的步骤

git - 如何将一个存储库的分支推送到另一个存储库中的新分支?

基于字段特定值的 GraphQL 查询