Ошибка фиксации GitHub: отказано в разрешении фатально: невозможно обработать путь ~ / App Data / aspnet-MyProject.МДФ

Я пытаюсь зафиксировать обновление для моего ASP.Net проект MVC с использованием интеграции GitHub в Microsoft Visual Studio 2017.

Я работаю над первыми миграциями кода. После моей предыдущей успешной фиксации я выполнил следующие команды на консоли диспетчера пакетов в Visual Studio:

PM> Enable-Migrations -ContextType ApplicationDbContext
PM> Add-Migration AccountNumberChanges
PM> Update-Database -Verbose

Как только это было сделано, я попытался выполнить фиксацию, но я получал следующую ошибку:

Git failed with a fatal error.
error: open("MyProject/App_Data/aspnet-MyProject-
20171110110346.mdf"): Permission denied
fatal: Unable to process path MyProject/App_Data/aspnet-
MyProject-20171110110346.mdf

вышеуказанные команды добавили .файл mdf для папке App_Data проекта.

3 ответов


вы не должны совершать mdf файлы в git - это файлы данных для вашей базы данных. git вероятно, жалуется, потому что файл используется, и ему нужен доступ для чтения, чтобы иметь возможность отправлять данные в репозиторий. Самое простое решение-удалить его из git с помощью git rm. Например, в командной строке:

git rm MyProject/App_Data/aspnet- MyProject-20171110110346.mdf

Если вы все еще хотите добавить свой mdf файлы для git. У меня тоже были проблемы с этим, так что я узнал:

Если вы используете Обозреватель Серверов из Visual Studio, просто щелкните правой кнопкой мыши на имени подключения в окне Server Explorer и нажмите кнопку закрыть соединение.


может быть это поможет кому-то в будущем. Проблема в том, что файл по-прежнему подключен к локальной БД в обозревателе серверов, и файл имеет используемые дескрипторы, которые блокируют фиксацию.

Что я на самом деле был

  1. щелкните правой кнопкой мыши локальную БД или базу данных, с которой связан файл и

  2. выберите опцию отсоединения, чтобы он мог освободить любые ручки от.МДФ или. ldf файлы.

PS: вы можете прикрепить базу данных в любое время, за исключением периода фиксации.

после отсоединения базы данных, фиксация работает без каких либо проблем. Попробуйте это, и это работает большую часть времени.