无法在julia上添加新包

时间:2016-05-17 19:30:09

标签: git dataframe julia

我正在尝试在Julia上添加一个新包。包的名称是DataFrames.jl。要添加此包,我运行julia,只需键入Pkg.add("DataFrames")即可。不幸的是,当我这样做时,我遇到了以下错误:

julia> Pkg.add("DataFrames")
error: bad index file sha1 signature
fatal: index file corrupt
ERROR: failed process: Process(`git --work-tree=~/theuserxxx/.julia/v0.4/METADATA --git-dir=~/theuserxxx/.julia/v0.4/METADATA/.git update-index -q --really-refresh`, ProcessExited(128)) [128]
 in run at ./process.jl:531
 in success at pkg/git.jl:30
 in add at pkg/entry.jl:54
 in add at pkg/entry.jl:73
 in anonymous at pkg/dir.jl:31
 in cd at file.jl:22
 in cd at pkg/dir.jl:31
 in add at pkg.jl:23

另外,每当我尝试更新现有软件包时,我也会遇到同样的错误:

julia> Pkg.update()
INFO: Updating METADATA...
error: bad index file sha1 signature
fatal: index file corrupt
ERROR: failed process: Process(`git pull --rebase -q`, ProcessExited(128)) [128]
 in pipeline_error at process.jl:555
 in run at process.jl:531
 in anonymous at pkg/entry.jl:283
 in withenv at env.jl:160
 in anonymous at pkg/entry.jl:282
 in cd at ./file.jl:22
 in update at ./pkg/entry.jl:272
 in anonymous at pkg/dir.jl:31
 in cd at file.jl:22
 in cd at pkg/dir.jl:31
 in update at ./pkg.jl:45

有没有人可以帮我解决这个问题?目前,我正在使用julia 0.4.5但这个问题在我转移到0.4.5之前就开始了。

1 个答案:

答案 0 :(得分:3)

听起来很傻,最好的办法是删除你的METADATA文件夹,然后重新运行Pkg.add("DataFrames")命令。当然,这将删除您之前下载的所有软件包,因此您必须重新安装。

显然,如果您的目录中未注册的软件包未在GitHub上备份,请不要删除您的目录。但是,当你收到类似这样的错误时,通常是因为本地计算机上的METADATA仓库以某种方式搞砸了。