从github项目分发二进制文件的最佳实践是什么?
我可以想到:
- 在您的项目中创建一个bin文件夹,在其中保存二进制文件的副本。但是,github是要存储源代码的,而不是二进制文件的。存储大型且定期更改的二进制文件可能在磁盘空间和带宽上很昂贵?
- 将二进制文件的副本上载到项目的github页面,或使用单独的网站托管二进制文件。但是,这并不总是可行的,并且需要更多(手动)工作来使二进制文件保持最新,我宁愿让二进制文件自动更新或通过单个操作进行更新。
从github项目分发二进制文件的最佳实践是什么?
我可以想到:
Answers:
从2012年12月11日起,不建议使用GitHub上的Downloads功能。文章分发大型二进制文件建议使用外部服务:
我们建议将Amazon S3与CloudFront配对用于存储,以通过CDN或SourceForge等其他服务进行服务。
但是,自2013年7月2日起,您现在可以定义发布。
发布,一个将软件交付给最终用户的工作流程。
发行版是具有变更日志和二进制资产的一流对象,除了Git工件外,还提供完整的项目历史记录。可从存储库的主页访问它们:
现在我很清楚,重要的是不要在您的github项目本身中存储二进制文件。因此,您将需要在其他位置存储二进制文件。我遇到的可能解决方案是:
什么样的二进制文件?二进制文件一定是从某个源头来的吧?
因此,在git中添加将这些二进制文件构建为子模块的源代码。然后在构建过程中,先构建这些二进制文件,然后再构建源代码。子模块与您知道有效的源的特定版本保持同步。您也可以获得源代码,因此调试起来更加容易。
除非二进制文件是图像等,否则只需存储它们即可。
如果空间不足,请使用bitbucket,因为它们具有无限的空间。