VS 2017 Git Local Commit DB.lock error on every commit

Viewed 151342

We are getting this error on every local commit:

Git failed with a fatal error.error: open(".vs/XXXXXX.Dev.Library/v15/Server/sqlite3/db.lock"): Permission deniedfatal: Unable to process path .vs/XXXXXX.Dev.Library/v15/Server/sqlite3/db.lock

This is a brand new installation of VS 2017 using the local git repository before it can sync to Azure DevOps GIT.

We can manually delete the lock file and then sync fine, but it seriously slows down the development process (having to close, delete, open, commit every time).

Does anyone know a better long-term fix for this issue?

17 Answers

Just add the .vs folder to the .gitignore file.

Here is the template for Visual Studio from GitHub's collection of .gitignore templates, as an example:
https://github.com/github/gitignore/blob/master/VisualStudio.gitignore


If you have any trouble adding the .gitignore file, just follow these steps:

  1. On the Team Explorer's window, go to Settings.

Team Explorer - Settings

  1. Then access Repository Settings.

Repository Settings

  1. Finally, click Add in the Ignore File section.

enter image description here

Done. ;)
This default file already includes the .vs folder.

enter image description here

  1. .vs folder should not be committed.
  2. create a file with name ".gitignore" inside the projects git root directory.
  3. Add the following line ".vs/" in ".gitignore" file.
  4. Now commit your project.

enter image description here

VS 2017 Git Local Commit DB.lock error on every commit

This issue must have been caused by a corrupt .ignore file.

If your IDE is Visual Studio please follow these steps to resolve this issue:

  1. Delete the .gitignore file from your project folder
  2. Go to Team Explorer
  3. Go to Home in Team Explorer
  4. Go to Settings
  5. Under GIT, Click Repository Settings
  6. Under - Ignore & Attributes Files - Under Ignore File - Click Add. You should see a notification that the Ignore File has been successfully created
  7. Build your solution. It will take a little while and create a new .ignore file once build is successful
  8. You should now be able to Commit and Push without any further issue

NB: Bear in mind that your version of visual studio might place these options differently. I am using Visual Studio 2019 Community Edition.

My automatically generated .gitignore file contained /.vs instead of .vs/. Fixing this typo fixed the problem!

dotnet now includes a command for gitignore.

Open cmd.exe from your project folder and type:

dotnet new gitignore

I'm not using Git directly thru Visual Studio but using the Git Desktop client.

I did however get a similar error but solved it by closing Visual Studio before Committing changes to master.

if you are using an IDE like visual studio and it is open while you sending commands close IDE and try again

git add .

and other commands, it will workout

For me steps below helped:

  • Close Visual Studio 2019
  • Delete .vs folder in the Project
  • Reopen the Project, .vs folder is automatically created
  • Done

enter image description here

For me these two files I have deleted by mistake, after undo these two files and get added in my changes, I was able to commit my changes to git.

Had this and my .gitignore was inside my project folder, but the main git folders were at the solution level. Moving .gitignore out to the solution/git level folders worked. Still not sure how it got there but...

Besides these great answers,

I also checked username, email in VS2017 > Team Explorer > Settings >

  • Global settings
  • Repository Settings

Basically verified vs Bitbucket credentials (click the 'clone' link to see your given username/repo), since there could be a mismatch.

That said I believe the more important check (particularly if working on same repo from 2x different machines) is the URL to remote repo.

I had the same error before, and found that the problem was because I didn't close visual studio

Try to copy the file in to your directory manually (C:\Users\Admin\AppData\Local\Temp\WebSitePublish\digisol--1147805695\obj\Debug\Package\PackageTmp.vs\digisol\v15\Server\sqlite3 )

I had done above solutions , finally this works solved my problem :

  • Close the visual studio

  • Run the git bash in the project folder

  • Write :

    git add .

    git commit -m "[your comment]"

    git push

To resolve this issue is simple. First Close, the Visual Studio and open the Windows Explorer, Go to location folder .vs and open folder properties and check the option hidden

Related