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

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

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

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

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


当前回答

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

git add .

和其他命令,它将锻炼

其他回答

Dotnet现在包含了gitignore的命令。

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

dotnet new gitignore

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

下面是来自GitHub的.gitignore模板集合的Visual Studio模板,作为一个例子: https://github.com/github/gitignore/blob/master/VisualStudio.gitignore


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

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

然后访问存储库设置。

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

完成了。;) 这个默认文件已经包含了.vs文件夹。

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

步骤1: 添加.vs/到你的.gitignore文件(如在其他答案中所说)。

步骤2: 重要的是要理解,第1步不会从当前分支索引中删除.vs/内的文件,如果它们已经被添加到分支索引中。因此,通过发出以下命令来清除您的活动分支:

git rm --cached -r .vs/*

步骤3: 最好立即对项目的所有其他活动分支重复步骤1和2。 否则,当切换到未清理的分支时,您将很容易再次面临相同的问题。

专家提示: 除了第一步,你可能想要使用这个官方的。gitingore模板,它涵盖的不仅仅是。vs路径: https://github.com/github/gitignore/blob/master/VisualStudio.gitignore (但是不要忘记第二步和第三步。)

除了这些精彩的回答,

我还检查了用户名,电子邮件在VS2017 >团队浏览器>设置>

全局设置 存储库设置

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

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