我们为iOS构建了一个库(SDK)。该库的源代码已关闭(专有)。我们要发布的输出是iOS框架,API文档,设置指南,许可证文件,但没有源代码。
我们正在讨论将其发布给公众的不同方法。
1)一种方法是创建一个托管在Github中的公共git存储库并推送其中的所有输出。
2)其他方法是在我们自己的服务器中托管这些文件。
在github上托管它在我们自己的服务器上托管它有什么好处吗?我知道git是管理源文件,但在这种情况下我们没有要发布的源文件,它只是输出。是否有任何通用规则来发布iOS close源SDK?
我更倾向于在我们自己的服务器中托管SDK(如拉链)。我相信它始终是您在网站上推出的最新SDK,而不是旧版SDK。
答案 0 :(得分:1)
在github上托管它在我们自己的服务器上托管它有什么好处吗?
主要好处是合作/反馈:在GitHub上,人们可以分叉你的回购并发回拉请求。
如果您选择该发布选项,我会维护一个包含两个submodules的父回购:
您可以在专用的私人服务器上推送前者 你可以在GitHub上推送后者。
使用单独的Git repos(此处为子模块)可以最大限度地降低将错误数据推送到错误的上游存储库的风险。
该命题仅适用于文本文件。
使用Release(如this question中提到的OP msk)并不是分发交付的好方法,因为repo是空的(没有代码,因为它是专有的),并且会仅包含交付(不一定是可执行文件)。
Release in GitHub用于将交付与代码(通过代码)相关联,并且不能容纳任何大小的任何二进制文件。
在Op的情况下,分发交付应该通过另一个参考(通常是Nexus,意思是artifact repository,没有大小限制)