发布单个文件以在 GitLab 上下载
Posted
技术标签:
【中文标题】发布单个文件以在 GitLab 上下载【英文标题】:Relase single file for download on GitLab 【发布时间】:2019-12-15 22:50:47 【问题描述】:我在 GitLab 上有一个完整的开源项目。它编译一个 .iso 文件,这是最终用户唯一相关的文件。
现在,是否可以创建仅包含 .iso 文件的版本?这将使任何人都可以方便地下载当前的发布文件,同时也可以根据需要查看源代码。
现在我只看到将我的整个主分支标记为“发布”的选项。
最好的
【问题讨论】:
这听起来像是 CI/CD 的任务,请参阅 GitLab CI。您可以在 CI 作业中编译 iso 并分发作业工件。 【参考方案1】:我也有同样的问题。我希望“发布”只包含一个下载 - 发布工件,而不是所有源代码。
我的发布来自 git 中的版本标记,并且 1:1 匹配,所以我真的不需要标签下的源“也发布”。
归根结底,gitlab 没有这个功能。
但是
我从this *** 得到答案并创建了一个.gitattributes 并包含以下条目,现在至少“源工件”是空的 zips/tars。
* export-ignore
.* export-ignore
【讨论】:
【参考方案2】:目前无法在不发布所有源代码的情况下仅发布单个工件(例如您的 .iso)。
【讨论】:
【参考方案3】:GitLab 版本允许您添加“资产”链接。资产可以是源代码或 URL。 URL 可以指向二进制文件。见Releases documentation。
我认为对您有用的是让您的构建和发布过程将 .iso 作为工件上传。然后,您可以使用 URL 将资产链接添加到版本以下载工件。查看artifact download documentation 以了解如何构建下载 URL。 ref
将是标签。
您将需要使用 API 来创建资产链接。请参阅Releases API documentation - 具体来说,如何“创建链接”
【讨论】:
该请求是专门针对“仅.iso”的 Gitlab 目前不支持这个,它会自动添加所有源,没有办法表明不包括它。你的答案甚至不是答案,只是链接去阅读和学习这是不可能的,因此,没有真正的帮助。以上是关于发布单个文件以在 GitLab 上下载的主要内容,如果未能解决你的问题,请参考以下文章
Linux使用svn在github上下载部分文件(单个文件夹)