ERROR: GitError(Code:ERROR, Class:Index, Invalid data in index - incorrect header signature)

Hi! I’ve been trying to use Julia but I keep getting the same error when i try to install a package. I get this:

julia> Pkg.update()
INFO: Updating METADATA…
ERROR: GitError(Code:ERROR, Class:Index, Invalid data in index - incorrect header signature)
Stacktrace:
[1] macro expansion at .\libgit2\error.jl:99 [inlined]
[2] #diff_tree#68(::Bool, ::Function, ::Base.LibGit2.GitRepo, ::Base.LibGit2.GitTree, ::String) at .\libgit2\diff.jl:22
[3] (::Base.LibGit2.#kw##diff_tree)(::Array{Any,1}, ::Base.LibGit2.#diff_tree, ::Base.LibGit2.GitRepo, ::Base.LibGit2.GitTree, ::String) at .<missing>:0
[4] #isdiff#76(::Bool, ::Function, ::Base.LibGit2.GitRepo, ::String, ::String) at .\libgit2\libgit2.jl:149
[5] (::Base.LibGit2.#kw##isdiff)(::Array{Any,1}, ::Base.LibGit2.#isdiff, ::Base.LibGit2.GitRepo, ::String, ::String) at .<missing>:0
[6] isfixed(::String, ::Base.LibGit2.GitRepo, ::Dict{VersionNumber,Base.Pkg.Types.Available}) at .\pkg\read.jl:64
[7] #7 at .\pkg\read.jl:213 [inlined]
[8] with(::Base.Pkg.Read.##7#8{Dict{String,Tuple{VersionNumber,Bool}}}, ::Base.LibGit2.GitRepo) at .\libgit2\types.jl:608
[9] installed(::Dict{String,Dict{VersionNumber,Base.Pkg.Types.Available}}) at .\pkg\read.jl:211
[10] update(::String, ::Set{String}) at .\pkg\entry.jl:393
[11] (::Base.Pkg.Dir.##4#7{Array{Any,1},Base.Pkg.Entry.#update,Tuple{String,Set{String}}})() at .\pkg\dir.jl:36
[12] cd(::Base.Pkg.Dir.##4#7{Array{Any,1},Base.Pkg.Entry.#update,Tuple{String,Set{String}}}, ::String) at .\file.jl:59
[13] #cd#1(::Array{Any,1}, ::Function, ::Function, ::String, ::Vararg{Any,N} where N) at .\pkg\dir.jl:36
[14] update() at .\pkg\pkg.jl:228

Does anybody know how to fix it? I would really appriciate it.Thanks