1

目前几乎整个基于 packagist.org 的依赖加载都依赖于基于 GitHub 的 repos。但是 GitHub 用户有可能删除公共存储库,这就引出了一个问题:

如果不再存在必要的 Composer 加载依赖项(或被破坏等删除),该怎么办?是否有档案可以提供长期服务?

Afaik packagist.org 不托管任何数据(目前),GitHub 也不保留已删除或重命名的存储库的公共副本。

4

2 回答 2

3

这就是萨蒂斯发挥作用的地方。使用 Satis,您可以从“packagist.org”创建所需包的本地副本,还可以为在线找到的所有版本创建本地下载的 ZIP 版本。

这带来了托管在本地网络中的额外好处,因此访问它时速度要快得多,并且每当您的在线连接中断或 Github 遇到问题或其他任何情况时,您都可以使用本地副本。

这些本地创建的版本由您自己备份和处理,如果您从它们安装一些东西,该位置将保留在composer.lock文件中(它注册任何 ZIP 下载的 URL,它不是 Github API URL,而是您的托管 Satis 文件的本地 HTTP 服务器)。

使用 Satis,您可以确保在本地环境中需要时可以访问您使用的每个软件。维护所需的所有软件包列表、偶尔运行 Satis 更新、拥有托管所有内容的本地 HTTP 服务器以及在composer.json您创建的每个文件中添加您的 Satis 存储库的成本很低。请注意,如果他们无权访问您的 Satis 托管文件,最后一步将无法使用您的软件 - 这是一个封闭的用户组解决方案。

于 2014-01-25T00:27:19.920 回答
2

尽管如果您使用流行的第三方组件不太可能发生这种情况,但您将在开发/生产空间中拥有一个副本,因此如果它出现故障,您可以创建一个新的存储库并上传该库的副本。

如果第三方组件不是很受欢迎并且您担心它的连续性,您可以分叉它以防万一

于 2014-01-24T23:25:08.277 回答