在官方文档中非常清楚地描述了执行此操作的过程.但是,我怀疑这个问题会经常被搜索到,所以也许加倍一点也不会有什么坏处.
可以使用包固定到特定版本using Pkg.单输入法将包封装到当前版本:
julia> Pkg.pin("DependentBootstrap")
INFO: Creating DependentBootstrap branch pinned.b32df31a.tmp
julia> Pkg.status()
13 required packages:
...
- DependentBootstrap 0.1.0 pinned.b32df31a.tmp
- ForecastEval 0.1.0
Run Code Online (Sandbox Code Playgroud)
你会注意到包已被固定到特定的git提交.
您可以使用第二个参数固定到特定包的特定标记版本:
julia> Pkg.pin("DependentBootstrap", v"0.0.1")
INFO: Creating DependentBootstrap branch pinned.996d3c22.tmp
INFO: Downgrading ForecastEval: v0.1.0 => v0.0.1
INFO: Building SpecialFunctions
INFO: Building Rmath
julia> Pkg.status()
13 required packages:
...
- DependentBootstrap 0.0.1 pinned.996d3c22.tmp
- ForecastEval 0.0.1
Run Code Online (Sandbox Code Playgroud)
请注意,钉扎操作会自动降级?Pkg.PackageSpec以满足版本要求.
您可以使用以下命令将软件包恢复到最新的稳定版本Pkg.pin:
julia> Pkg.free("DependentBootstrap")
INFO: Freeing DependentBootstrap
INFO: Upgrading ForecastEval: v0.0.1 => v0.1.0
INFO: Building SpecialFunctions
INFO: Building Rmath
julia> Pkg.status()
13 required packages:
...
- DependentBootstrap 0.1.0
- ForecastEval 0.1.0
Run Code Online (Sandbox Code Playgroud)
请注意,ForecastEval它也自动返回到最新版本.