-->

“Git error: could not lock config file C:/Users/ol

2020-02-09 15:13发布

问题:

I have an interesting error that keeps coming up when using git for windows (version 2.12.0.windows.1). I recently migrated my windows profile directory from one location to another.

For some git commands I get the error:

error: could not lock config file C:/Users/<my old profile>/.influxdb/.gitconfig: No such file or directory error: could not lock config file C:/Users/<my old profile>/.influxdb/.gitconfig: No such file or directory

Note: This error always comes up twice, for example if I try to do git config --global diff.tool p4merge

What is interesting is that this folder it's looking for doesn't exist, and if i use git config -l --show-origin to see where git is getting it's settings, it makes no mention of this path, and if I look inside any CONFIG files I can see no reference to this non-existant path.

Where is git storing a reference to this old path? I need to update it as I think this error is stopping some commands working.

回答1:

I faced similar issue.

Error: could not lock config file C:/.gitconfig:

Solution: I had a system environment variable (Home= C:\ ) in my computer and it caused this issue. Deleted it and everything started working.



回答2:

This was being caused by bad paths in my environment variables (due to the profile migration).

I opened up System Properties -> Environment Variables, and updated all references to C:\Users\<old_profile> with the new one.



回答3:

this can be due to using multiple git account on visual studio. Check if you are logged in with correct credentials.



回答4:

In WSL / bash

Use sudo to set values. This should only apply to the --system scope.

sudo git config --system diff.tool p4merge

In Cmd / PowerShell

Run as Administrator to set values. This is because the gitconfig file (probably located at: C:\Program Files\Git\mingw64\etc\) is protected.

Only SYSTEM and COMPUTER\Administrators have Modify rights. The rest of the ACLs have Read and Read & execute rights only.