VS 2017 Git本地提交数据库。每次提交时锁定错误

我们在每次本地提交时都会得到这个错误:

Git失败,出现致命错误。 open(“.vs / XXXXXX.Dev.Library / v15 /服务器/ sqlite3 / db.lock”):许可 deniedfatal:无法处理路径 .vs / XXXXXX.Dev.Library v15 /服务器/ sqlite3 db.lock < / p >

这是一个全新的VS 2017安装,使用本地git存储库,然后才能同步到Azure DevOps git。

我们可以手动删除锁文件,然后同步,但这会严重减慢开发过程(每次都必须关闭删除开放提交)。

有人知道这个问题的更好的长期解决方案吗?

151951 次浏览

只需将.vs文件夹添加到.gitignore文件中。

这是从GitHub的.gitignore模板集合中的Visual Studio模板,作为一个例子 https://github.com/github/gitignore/blob/master/VisualStudio.gitignore < / p >

如果您在添加.gitignore文件时遇到任何问题,请遵循以下步骤:

  1. 在团队资源管理器的窗口中,选择设置。

Team Explorer - Settings

  1. 然后访问存储库设置。

Repository Settings

  1. 最后,单击忽略文件部分中的添加。

enter image description here

< p >。;) < br > 这个默认文件已经包含了。vs文件夹

enter image description here

  1. .vs文件夹不应该被提交。
  2. 创建一个名为"的文件。Gitignore”在项目git根目录里面。
  3. 添加下面的行”。和" in "。gitignore”文件。
  4. 现在提交你的项目。

enter image description here

< p > 步骤1: < br > 添加.vs/到你的.gitignore文件(如在其他答案中所说)。< / p > < p > 步骤2: < br > 重要的是要理解,第1步不会从当前分支索引中删除.vs/内的文件,如果它们已经被添加到分支索引中。因此,通过发出

来清除您的活动分支
git rm --cached -r .vs/*
< p > 步骤3: < br > 最好立即对项目的所有其他活动分支重复步骤1和2 否则,当切换到未清理的分支时,您将很容易再次面临相同的问题 < p > 专家提示: < br > 除了步骤1,你可能想要使用这个官方的。gitingore模板用于VisualStudio,它涵盖的不仅仅是。vs路径:
https://github.com/github/gitignore/blob/master/VisualStudio.gitignore < br > (但是仍然不要忘记步骤2和3)

我也遇到了同样的问题,但是我通过创建.gitignore文件解决了这个问题。

我还找到了一个简单的解决方法,就是删除db。从。vs文件夹中锁定文件,但你必须每次都这样做,长时间这样做会使这个操作变得讨厌。

解决这个问题的最好方法是像之前建议的那样创建.gitignore文件,但我认为提到这个解决方法也很好,只是为了一般的知识目的!

< p >问候, 托尼Grinton < / p >

我没有直接通过Visual Studio使用Git,而是使用Git Desktop客户端。

然而,我确实得到了类似的错误,但在提交更改到master之前关闭Visual Studio解决了这个问题。

解决这个问题很简单。首先关闭Visual Studio,打开Windows资源管理器,转到位置文件夹。vs,打开文件夹属性,并检查隐藏的选项

尝试手动将文件复制到您的目录(C:\Users\Admin\AppData\Local\Temp\WebSitePublish\digisol—1147805695\obj\Debug\Package\PackageTmp。vs \ digisol \ v15 \ Server \ sqlite3)

如果你使用的是visual studio这样的IDE,当你发送命令时它是打开的,关闭IDE再试一次

git add .

和其他命令,它将锻炼

对我来说,以下步骤很有帮助:

  • 关闭Visual Studio 2019
  • 删除项目中的。vs文件夹
  • 重新打开项目,.vs文件夹将自动创建
  • 完成

VS 2017 Git本地提交DB。每次提交时锁定错误

此问题一定是由损坏的.ignore文件引起的。

如果您的IDE是Visual Studio,请按照以下步骤解决此问题:

  1. 从项目文件夹中删除.gitignore文件
  2. 打开团队资源管理器
  3. 在团队资源管理器中返回主页
  4. 进入设置
  5. 在GIT下,单击Repository Settings
  6. 忽略&属性文件-在“忽略文件”下-单击“添加”。您应该会看到“忽略文件”已成功创建的通知
  7. 构建您的解决方案。一旦构建成功,将需要一段时间来创建一个新的.ignore文件
  8. 您现在应该能够提交和推送,而不会出现任何其他问题

注意:请记住,您的visual studio版本可能会以不同的方式设置这些选项。我使用的是Visual Studio 2019社区版。

我自动生成的.gitignore文件包含/.vs而不是.vs/。修复这个错别字就解决了问题!

我做了以上的解决方案,最终这个作品解决了我的问题:

  • 关闭视觉工作室

  • 在项目文件夹中运行git bash

  • < p >写:

    Git添加。

    Git commit -m "[你的评论]"

    git push < / p >

enter image description here

对我来说,我错误地删除了这两个文件,在撤消这两个文件并添加到我的更改后,我能够将我的更改提交到git中。

有这个和我的.gitignore在我的项目文件夹中,但主要的git文件夹在解决方案级别。将.gitignore移到解决方案/git级别的文件夹中是有效的。仍然不确定它是如何到达那里的,但是……

dotnet现在包含了gitignore的命令。

从你的项目文件夹中打开cmd.exe,输入:

dotnet new gitignore

除了这些精彩的回答,

我也检查了VS2017 >中的用户名,电子邮件;团队探索者>设置在

  • 全局设置
  • 存储库设置

基本上验证与Bitbucket凭据(点击“克隆”链接,查看您给定的用户名/回购),因为可能不匹配。

也就是说,我认为更重要的检查(特别是如果从2台不同的机器上进行相同的回购)是远程回购的URL。

我之前也有同样的错误,发现问题是因为我没有关闭visual studio