VS 2017 GitローカルコミットごとにDB.lockエラーが発生する


200

すべてのローカルコミットでこのエラーが発生します。

Gitが致命的なエラーで失敗しました。エラー: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

これは、Azure DevOps GITと同期する前にローカルgitリポジトリを使用したVS 2017の新しいインストールです。

ロックファイルを手動で削除してから正常に同期できますが、開発プロセスが大幅に遅くなります(毎回を閉じ削除開いてコミットする必要があります)。

誰かがこの問題のより良い長期的な修正を知っていますか?


他の誰かがこれに遭遇し、「。vs /」を.gitignoreに追加しても機能しない場合は、PowerShellでファイルを作成してからNotepad ++で編集すると、ファイルの文字エンコードのタイプが間違ったままになります。私はそれをVS Codeで開いてプレーンUTF8としてエンコードする必要があり、それで問題なく動作しました
Brian Leishman

回答:


418

.vsフォルダーを.gitignoreファイルに追加するだけです。

例として、GitHubの.gitignoreテンプレートのコレクションからのVisual Studioのテンプレートを次に示します。https
//github.com/github/gitignore/blob/master/VisualStudio.gitignore


.gitignoreファイルの追加に問題がある場合は、次の手順に従ってください。

  1. チームエクスプローラーのウィンドウで、[設定]に移動します。

チームエクスプローラー-設定

  1. 次に、リポジトリ設定にアクセスします。

リポジトリ設定

  1. 最後に、[ファイルを無視]セクションで[追加]をクリックします。

ここに画像の説明を入力してください

できました。;)
このデフォルトのファイルには、すでに.vsフォルダーが含まれています。

ここに画像の説明を入力してください


3
はい、それが最高のアンウェアです。「2017」は次の場所にのみ配置します。#Visual Studio 2015/2017 cache / options directory .vs /
harveyt

1
問題は、git clean -fxdそれがひねりのあるニッカーであるということです...私は掃除する前にVSを終了する必要があります。これはVS2017以降に始まり、2015年には起こりませんでした
Peter McEvoy

4
これも私にとってはうまくいきました。誤解を招くエラーメッセージに対する完全な回答。
Stanley Okpala Nwosa

@Matheus、このコミットを実行した後、ステージングは​​機能しましたが、Commit AllとPushは依然として同じエラーを示します。コミットしてプッシュするにはどうすればよいですか?
Stanley Okpala Nwosa

私にとってはうまくいきましたが、VSでgitを実行することはほとんどの場合少し魔法のようです。私は帽子からウサギを引っ張ろうとしますが、代わりにチンパンジーを入手します。
Roberto

63
  1. .vsフォルダーはコミットしないでください。
  2. プロジェクトのgitルートディレクトリ内に「.gitignore」という名前のファイルを作成します。
  3. 「.gitignore」ファイルに次の行「.vs /」を追加します。
  4. ここでプロジェクトをコミットします。

ここに画像の説明を入力してください


こんにちは、このファイルタイプはgitignoreファイルにありますが、エラーが発生します。plsは助けます。
user3820266

33

ステップ1:(
他の回答で述べたように).vs /を.gitignoreファイルに追加します。

ステップ2:
ステップ1では、.vs /内のファイルが既に追加されている場合、現在のブランチインデックスから削除されないことを理解することが重要です。次のコマンドを発行して、アクティブなブランチをクリアします。

git rm --cached -r .vs/*

ステップ3:
プロジェクトの他のすべてのアクティブなブランチについても、ステップ1と2をすぐに繰り返すのが最善です。
そうしないと、クリーンされていないブランチに切り替えるときに、同じ問題に簡単に直面します。

プロのヒント:
ステップ1の代わりに、.vsパスだけをカバーするのではない、このVisualStudio用の公式の.gitingoreテンプレートを使用することもできます:
https : //github.com/github/gitignore/blob/master/VisualStudio.gitignore
(ただし、ステップ2と3を忘れないでください。)


.vsが.gitignore(.vs /)ファイルから除外されましたが、問題は解決しません。他に何が問題になる可能性がありますか?
Stanley Okpala Nwosa

1
git rm --cached -r .vs / *を実行して解決できました。ありがとう
Stanley Okpala Nwosa 2018年

5

VS 2017 GitローカルコミットごとにDB.lockエラーが発生する

この問題は、破損した.ignoreファイルが原因で発生したと考えられます。

IDEがVisual Studioの場合は、次の手順に従ってこの問題を解決してください。

  1. プロジェクトフォルダーから.gitignoreファイルを削除する
  2. チームエクスプローラーに移動
  3. チームエクスプローラーでホームに移動する
  4. 設定に移動
  5. GITで、[リポジトリ設定]をクリックします。
  6. 無視-属性ファイル-無視ファイル-追加をクリックします。無視ファイルが正常に作成されたという通知が表示されます
  7. ソリューションを構築します。ビルドが成功したら少し時間がかかり、新しい.ignoreファイルが作成されます
  8. これで、問題なくコミットとプッシュを実行できるはずです。

注意:Visual Studioのバージョンによって、これらのオプションの配置が異なる場合があることに注意してください。Visual Studio 2019 Community Editionを使用しています。


私のために働いた。ありがとう!
Chase Ernst

2

同じ問題がありましたが、.gitignoreファイルを作成することで解決しました。

.vsフォルダーからdb.lockファイルを削除するだけの回避策も見つけましたが、毎回行う必要があり、これを長時間行うと、これは煩わしい操作になります。

この問題を解決する最善の方法は、以前に提案されたように.gitignoreファイルを作成することですが、一般的な知識の目的のためだけに、この回避策についても言及するとよいと思います。

よろしく、トニーグリントン


0

Visual StudioでGitを直接使用していませんが、Gitデスクトップクライアントを使用しています。

ただし、同様のエラーが発生しましたが、変更をマスターにコミットする前にVisual Studioを閉じることで解決しました。


0

Visual StudioのようなIDEを使用していて、コマンドの送信中にIDEが開いている場合、IDEを閉じて再試行します。

git add .

と他のコマンド、それはうまくいきます


0

私にとっては以下の手順が役立ちました:

  • Visual Studio 2019を閉じる
  • プロジェクトの.vsフォルダーを削除する
  • プロジェクトを再度開くと、.vsフォルダーが自動的に作成されます
  • できた

0

自動生成された.gitignoreファイルがの/.vs代わりに含まれています.vs/。このタイプミスを修正することで問題が解決しました!


0

ここに画像の説明を入力してください

私にとって、誤って削除したこれら2つのファイル、これら2つのファイルを元に戻し、変更に追加した後、変更をgitにコミットすることができました。


0

これがあり、私の.gitignoreはプロジェクトフォルダー内にありましたが、メインのgitフォルダーはソリューションレベルでした。.gitignoreをソリューション/ gitレベルのフォルダーに移動すると機能しました。それがどうやってそこに到達したのかまだわかりませんが...


-1

ファイルをディレクトリに手動でコピーしてみてください(C:\ Users \ Admin \ AppData \ Local \ Temp \ WebSitePublish \ digisol--1147805695 \ obj \ Debug \ Package \ PackageTmp.vs \ digisol \ v15 \ Server \ sqlite3)


-1

私は上記の解決策を行っていましたが、最終的にこの作業で問題が解決しました:

  • ビジュアルスタジオを閉じる

  • プロジェクトフォルダーでgit bashを実行します。

  • 書く :

    git add。

    git commit -m "[あなたのコメント]"

    git push


-2

この問題を解決するのは簡単です。まずVisual Studioを閉じてWindowsエクスプローラーを開き、ロケーションフォルダー.vsに移動してフォルダーのプロパティを開き、非表示のオプションを確認します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.