Възникна грешка от libgit2. Категория = Os (Грешка)

Вече няколко пъти се натъкнах на това:

 An error was raised by libgit2. Category = Os (Error). 

Което понякога причинява тази или подобна грешка, докато пиша код:

Failed to open '.../App_Data/....mdf': 
The process cannot access the file because it is being used by another process.

Когато това се случи, не мога да кодирам, без да рестартирам моя Visaul Studio 2012.

Мисля, че се причинява от Source Control - Git, тъй като не си спомням да съм имал този проблем, преди да инсталирам разширението Git за Visual Studio и Team Foundation.

Някой друг сблъсквал ли се е с това и как го е решил?


person Komengem    schedule 23.04.2013    source източник
comment
Какъв е въпросният файл?   -  person Edward Thomson    schedule 23.04.2013
comment
@EdwardThomson предимно .mdf, но също така не мога да използвам определени клавиши на моята клавиатура, напр.: Въведете клавиш, докато сте в източника   -  person Komengem    schedule 24.04.2013
comment
Интересно, вашите .mdf файлове във вашето хранилище ли са? Игнорират ли се чрез .gitignore?   -  person Edward Thomson    schedule 24.04.2013
comment
МОИТЕ .mdf файлове са в App_Data. Приложението е MVC 4. И току-що проверих, .mdf не се игнорира чрез .gitignore.   -  person Komengem    schedule 24.04.2013


Отговори (3)


Току-що се натъкнах на това днес с нов проект на Visual Studio. Проектът използваше автоматично генерирания .gitignore, който имаше следните записи, които според мен трябваше да покриват добре файла .mdf:

# SQL Server files
App_Data/*.mdf
App_Data/*.ldf

Все пак получих:

An error was raised by libgit2. Category = Os (Error). 
Failed to open '.../App_Data/....mdf': 
The process cannot access the file because it is being used by another process.

Така че редактирах .gitignore, предхождайки всеки запис със звездичка-наклонена черта, така:

# SQL Server files
*/App_Data/*.mdf
*/App_Data/*.ldf

И успях да продължа работата както обикновено.

person Douglas Ludlow    schedule 24.04.2013
comment
Това ме забавя, ще се отърва от git от моя проект - person Komengem; 25.04.2013
comment
Получавам това и на .dbmdl, въпреки че съм ги .gitignored! Наистина разочароващо. Работи добре от Git GUI, но в същото репо и ако проверя всичко, тогава приставката VS ще работи за известно време отново, докато не стане. - person Jason Kleban; 17.07.2013
comment
@uosɐſ Може да се наложи да премахнете въпросните файлове от действителното репо. .gitignore игнорира файловете напред. - person Douglas Ludlow; 18.07.2013
comment
Преди това изтрих този .dbmdl файл (тъй като се регенерира) и проверих изтриването. Извършването на git rm --cached blah.dbmdl казва, че пътят не съществува (показва правилния път и имам само един клон). - person Jason Kleban; 18.07.2013

Бих искал да добавя, че може би е също толкова просто, колкото => Затворете връзката си с база данни :)

person Remi Marenco    schedule 27.09.2013

Имах същата грешка. IIS express работеше в системната област. Когато затворих IIS Express, всичко се извърши според очакванията.

person user1526035    schedule 29.10.2013