【问题标题】:Github release a specific folderGithub 发布特定文件夹
【发布时间】:2024-01-14 11:34:01
【问题描述】:

我有一个包含一堆文件夹的存储库,但我只想为其中一个文件夹创建版本。

更简单的故事,它是针对游戏服务器的,我只想为客户端创建版本,作为向玩家提供客户端下载的方式。

【问题讨论】:

  • “发布”是指“标签”吗?
  • 如果它们可以单独发布,它们应该是单独的存储库。理想情况下,使用包管理工具将它们组合在一起。或者有options to have a repository made of other repositories
  • 发布时,有一个可用的压缩文件,但只有存储库中的特定文件夹。也许显示细节会有所帮助。 github.com/crosenblum/kalbase 是我的主要存储库。但我想创建此文件夹更改的压缩文件版本。 github.com/crosenblum/kalbase/tree/master/client
  • 很好的问题@crosenblum,你有没有找到从文件夹中释放的方法?我们有一个包含许多文件夹的主仓库,每个文件夹代表不同的数据库,每个数据库都有自己的版本,有什么想法吗?
  • @dim_user 不确定 2 年后它是否仍然有用,但我只是在下面详细介绍了 how to customize your release contents

标签: github release game-development


【解决方案1】:

如果client/ folder content 可以从项目的其余部分重新构建,理想情况下,它不应该被版本化。

无论是否已版本化,您都可以构建您的发布工件(此处为 client/ 文件夹的 zip)并将其作为 GitHub 版本发布到您的存储库。
见“Creating Releases”。

它假设您首先在您的 repo 上创建一个标签,以便将该 zip 文件关联到该 repo 的精确版本。

【讨论】:

  • 我该怎么做,你所说的大部分内容对我来说听起来很不清楚。你能说得清楚一点,我需要采取哪些实际步骤?
  • @crosenblum help.github.com/articles/creating-releases 中哪些步骤不清楚?
  • 有分支、标签等的引用
  • @crosenblum 确切地说:发布与标签相关联:创建一个引用 repo 内容的标签,该标签与您从所述内容生成的版本相匹配,然后上传与该标签关联的版本。
  • 投反对票,因为这不能回答问题(尽管 TBF github 可能在此回答后更改了他们的发布功能):指向 github 的“创建发布”页面的链接仅描述了如何创建该项目包括其所有源代码,以及其他上传的文件......不是如何排除source.zip(由github默认创建)而是包含一个具有不同(子文件夹)内容的.zip,这是OP所需要的。
【解决方案2】:

发布版本时,自动生成的Source Code .zip.tar.gz文件包括分支中的所有文件你在这里选择:

因此,我这样回答了OP的问题:

1。使用只包含发布内容的分支

  1. 使用当前分支的内容创建一个新分支并检查它(例如git checkout -b rel
  2. 删除所有非发布文件和文件夹(别担心,您只是从新分支中删除它们,使用git branch 确认您在正确的分支上)
  3. 将发布文件夹内容移动到根文件夹并删除空文件夹
  4. 暂存并提交所有更改(例如git add . + git commit -a -m "v1 release"
  5. (可选:如果您更喜欢使用Github interface for writing the release details,请不要这样做)创建发布版本标签(例如`git tag v1.0.0 -m "initial release")
  6. 推送这个新分支(例如git push --set-upstream origin rel

2。将可执行文件/安装程序添加到版本中

  1. 浏览并登录您的帐户并前往https://github.com/USER-NAME/PROJECT-NAME/releases
  2. 单击新版本按钮并填写release details,选择您在上面创建的分支
  3. 由于 GitHub 限制上传大于 50MB 的文件(除非您使用 Git LFS),您的 runnables(例如 .exe.apk)可以在通过拖放发布之前添加并上传到版本本身:

该版本将自动保存为草稿,并且仅在发布时才会生成源代码存档文件(没有您在上面添加的可运行文件)。

P.S.:Managing Releases Gihub Docs 页面上提供了用于创建和编辑版本的图像和步骤。

【讨论】:

    最近更新 更多