如何仅更新特殊包装?

时间:2014-06-08 02:37:20

标签: package julia

运行Pkg.update()时,如果未固定或脏,则会更新所有包。 但是有可能更新一个特殊的包(比如FackCheck)吗? 我已经看了一下Julia源代码,但还不喜欢直接的解决方案。 我知道我可以固定所有包,当想要更新某人时,只需取消固定包,然后运行Pkg.update(),但我认为这不是一个好方法。

2 个答案:

答案 0 :(得分:1)

您还可以导航到包目录并键入git checkout master && git pull。当您想要让包管理员负责它时,您可以说Pkg.free("SomePackage")

答案 1 :(得分:0)

如果您知道要使用哪个软件包版本,则可以按照以下方式执行操作。

Pkg.rm("FactCheck")
Pkg.add("FactCheck", v"0.1.1")

但是那也将修复FactCheck,因此Pkg.update()会忽略它。

稍微粗略和手动的变体将是:

但在这种情况下,您可能缺少潜在的要求。

因此,假设您所使用的不是特定版本,而是最简单版本的master分支,您可以这样做。

Pkg.rm("FactCheck")
Pkg.clone("FactCheck")

但现在你正在使用潜在的不稳定版本。

所以最后问题是你有什么具体的用例保证只更新一个包。如果您只更新一个可能导致依赖性问题的软件包,那么同时更新所有软件包是更好的选择。