作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想在本地重新编译/重新安装已经通过 OPAM 下载的包,但不再次下载。opam reinstall
似乎总是重新下载软件包,我看不到禁用它的选项。
以下是人们可能想要执行此本地重新安装的几个原因:
最佳答案
opam
将尝试使下载的包与上游的包保持同步。这意味着,如果包在本地缓存中并且它与上游包没有区别,那么它不会被下载。
如果要在本地更改源代码,则需要pin
包。
另一个选择是创建您自己的存储库并将其添加到您的 opam。您的本地存储库可以包含所有包或仅包含您感兴趣的几个包。对于处理本地存储库,有一个 opam-admin
工具。
创建自己的存储库并不是一件容易的事,因此我建议您使用 pin
您希望在本地拥有的 command 和 pin 包到指定的本地路径。
示例(需要 opam 1.2 或更高版本)
opam source lwt.2.4.8
opam pin add lwt lwt.2.4.8
lwt
被随意选择,只是因为它很短。第一个命令将下载指定版本的源代码并将它们放在文件夹
lwt.2.4.8
中。随着
opam
文件。第二个将强制 opam 工具使用此特定文件夹作为
lwt
的来源。包裹。
关于ocaml - OPAM:如何在不重新下载的情况下在本地重新安装软件包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30060199/
我是一名优秀的程序员,十分优秀!