Помилка DB.lock VS 2017 Git Local Commit при кожному здійсненні


200

Ми отримуємо цю помилку під час кожного місцевого вчинення:

Не вдалось отримати Git із фатальною помилкою. /Server/sqlite3/db.lock

Це абсолютно нова установка VS 2017 з використанням локального сховища git, перш ніж воно зможе синхронізуватися з Azure DevOps GIT.

Ми можемо видалити файл блокування вручну, а потім добре синхронізувати , але це серйозно уповільнює процес розробки ( щоразу потрібно закривати , видаляти , відкривати , виконувати ).

Хтось знає кращу довгострокову помилку щодо цього питання?


Якщо хтось інший перебігає це, і додавання ".vs /" до .gitignore, здається, не працює, коли файл у PowerShell, а потім редагування за допомогою Notepad ++ залишив файл із неправильним типом кодування символів. Мені потрібно було відкрити його в коді VS і кодувати його як звичайний UTF8, і тоді він спрацював чудово
Брайан Лейшман

Відповіді:


418

Просто додайте папку .vs у файл .gitignore .

Ось шаблон для Visual Studio з колекції шаблонів .gitignore GitHub, як приклад:
https://github.com/github/gitignore/blob/master/VisualStudio.gitignore


Якщо у вас виникли проблеми з додаванням .gitignore-файлу, просто виконайте наступні дії:

  1. У вікні Team Explorer перейдіть до Налаштування.

Провідник команди - Налаштування

  1. Потім перейдіть до налаштувань сховища.

Налаштування сховища

  1. Нарешті, натисніть кнопку Додати в розділі Ігнорувати файл.

введіть тут опис зображення

Зроблено. ;)
Цей файл за замовчуванням вже містить папку .vs.

введіть тут опис зображення


3
Так, це найкраще програмне забезпечення, я розміщую лише "2017" у: # кеш / каталог каталогу Visual Studio 2015/2017 .vs /
harveyt

1
Проблема полягає в тому, що git clean -fxdтоді це в'язані в'язки. Мені потрібно кинути VS, перш ніж я можу почистити. Це розпочалося лише з VS2017 і не відбулося у 2015 році
Пітер МакЕвой

4
Це працювало і для мене. Ідеальна відповідь на помилкове повідомлення про помилку.
Стенлі Окпала Нвоса

@Matheus після виконання цього зобов’язання поетапно працював, але "Виконати все і натиснути" все одно показує однакову помилку. Що можна зробити, щоб змусити це зробити і натиснути?
Стенлі Окпала Нвоса

Працював для мене, хоч робити git у VS здається трохи магічною більшість часу. Я намагаюся витягнути кролика з шапки, але натомість отримаю шимпанзе.
Роберто

63
  1. .vs папку не слід вводити.
  2. створити файл із назвою ".gitignore" всередині кореневої директорії git.
  3. Додайте наступний рядок ".vs /" у файл ".gitignore".
  4. Тепер покладіть свій проект.

введіть тут опис зображення


Привіт, незважаючи на те, що цей тип файлу є у файлі gitignore, я все одно отримую помилку. PLS допомогти.
користувач3820266

33

Крок 1.
Додайте .vs / у файл .gitignore (як сказано в інших відповідях).

Крок 2:
Важливо розуміти, що крок 1 НЕ БУДЕ видалити файли в .vs / з вашого поточного індексу гілки, якщо вони вже додані до нього. Тож очистіть свою активну галузь, видавши:

git rm --cached -r .vs/*

Крок 3:
Найкраще негайно повторити кроки 1 і 2 для всіх інших активних гілок вашого проекту.
В іншому випадку ви з легкістю знову зіткнетеся з тими ж проблемами при переході на неочищену гілку.

Порада:
замість кроку 1 ви можете використовувати цей офіційний шаблон .gitingore для VisualStudio, який охоплює набагато більше, ніж просто .vs шлях:
https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
(Але все ж не забудьте кроки 2 і 3.)


.vs було виключено з мого файлу .gitignore (.vs /), і проблема все ще зберігається. Що ще може бути проблемою?
Стенлі Окпала Нвоса

1
Вдалося вирішити, запустивши git rm --cached -r .vs / *. Спасибі
Стенлі Окпала Нвоса

5

Помилка DB.lock VS 2017 Git Local Commit при кожному здійсненні

Ця проблема повинна бути викликана пошкодженим файлом .ignore.

Якщо ваш IDE - це Visual Studio, виконайте наступні кроки, щоб вирішити цю проблему:

  1. Видаліть .gitignore файл із папки проекту
  2. Перейдіть до Team Explorer
  3. Перейдіть додому в Team Explorer
  4. Перейдіть у Налаштування
  5. У розділі GIT натисніть Налаштування сховища
  6. Під - Ігнорувати файли та атрибути - Під Ігнорувати файл - Клацніть Додати. Ви повинні побачити повідомлення про те, що файл ігнорування успішно створено
  7. Побудуйте своє рішення. Мине трохи часу і створити новий .ignore файл, коли збірка буде успішною
  8. Тепер ви можете мати змогу взяти на себе зобов’язання та натиснути без будь-якого іншого питання

NB: Майте на увазі, що ваша версія візуальної студії може розміщувати ці параметри по-різному. Я використовую Visual Studio 2019 Community Edition.


Працювали для мене. Дякую!
Чейз Ернста

2

У мене була така ж проблема, але я вирішив, створивши файл .gitignore.

Я також знайшов вирішення, яке просто полягає у видаленні файлу db.lock з папки .vs, але ви повинні робити це кожен раз, і це робити довго, це робить прикрою операцією.

Найкращий спосіб вирішити цю проблему - створити файл .gitignore, як було запропоновано раніше, але я вважаю, що добре згадати і цей спосіб вирішення, просто задля загальних знань!

З повагою, Тоні Грінтон


0

Я не використовую Git безпосередньо через Visual Studio, але використовую клієнт Git Desktop.

Однак я отримав подібну помилку, але вирішив її, закривши Visual Studio перед внесенням змін у master.


0

якщо ви використовуєте подібну візуальну студію IDE, і вона відкрита, коли ви надсилаєте команди, закрийте IDE і повторіть спробу

git add .

та інші команди, це буде тренування


0

Для мене кроки нижче допомогли:

  • Закрити Visual Studio 2019
  • Видаліть папку .vs в проекті
  • Повторно відкрийте проект, папка .vs створюється автоматично
  • Зроблено

0

Мій автоматично генерований .gitignoreфайл міститься /.vsзамість .vs/. Виправлення цієї друкарської помилки вирішило проблему!


0

введіть тут опис зображення

Для мене ці два файли я видалив помилково, після скасування цих двох файлів і додавання до змін я зміг здійснити зміни до git.


0

Якщо це було, і мій .gitignore знаходився в моїй папці проекту, але основні папки git знаходилися на рівні рішення. Переміщення .gitignored до папки рішення / 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 та відкрийте властивості папки та перевірте приховану опцію

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.