Помилка Git SVN: процес Git збоїв у сховищі раніше


97

Я просто намагався внести зміни до майстра Git. З того, що я прочитав, видається, що ідея полягає в тому, щоб видалити файл блокування. У повідомленні сказано:

переконайтеся, що ніякі інші процеси Git не запущені та видаліть файл вручну

Можливо, хтось знає, який файл видалити та як його видалити?


1
Чи можете ви показати повне повідомлення про помилку, включаючи команду, яку виконуєте?
Шверн

Я використовую черепаху, хоча. чи можете ви видалити цей файл у черепасі чи лише в шкаралупі?
Пінчас К

Ймовірно, вам доведеться це зробити в оболонці або файловому провіднику. Можливо, вам доведеться показати приховані файли.
Шверн

Повна помилка така: фатальна: Неможливо створити файл "C / etc / .git / index.lock". Якщо жоден інший процес git не запущений, це, ймовірно, означає, що процес git зазнав аварії в сховищі раніше. Переконайтесь, що жоден інший процес git не запущений, і видаліть файл вручну, щоб продовжити.
Пінчас К

5
Повідомлення про помилку каже все це. Видалити, C:\etc\.git\index.lockяк і будь-який інший файл.
Шверн

Відповіді:


194

Файл, про який йде мова, швидше за все, .git/index.lockі його слід безпечно просто видалити, якщо у вас немає інших процесів git . Переконайтеся, що команда git-svn не висить.

PS Мій звичайний підхід до вирішення проблем git-svn полягає в тому, щоб зробити нове сховище сховища. Займає багато часу, але ви можете робити це паралельно, намагаючись виправити проблему. Трохи перегони між вами та git. Звичайно, це працює лише в тому випадку, якщо у вас не було розмитих комітетів.


1
Це не вирішило це для мене. У мене був ще один файл блокування на .git / svn / refs / remotes / git-svn / index.lock.
Кай Ставгінський

74

Видалення index.lockфайлу, як заявив Schwern, вирішить цю проблему.

Ви можете видалити його, запустивши rm -f ./.git/index.lock

rmКоманда використовується для видалення (видалити) файли і каталоги.

Сила -fозначає, що спонукає ваш комп'ютер видалити файли, не вимагаючи підтвердження


9

Для користувача "GUI", як я

Відкрийте розширення Git і виберіть сховище (якщо їх більше) Виберіть "Налаштування" у верхньому меню, потім "Підтримка Git", а потім натисніть "Видалити блокування покажчика"

Розширення Git: Налаштування-> Обслуговування Git-> Видалити блокування покажчиків



2

Це також може стосуватися будь-яких * .lock файлів у .git /

Перевірте та видаліть їх. Ви можете використовувати:rm -f ./.git/*.lock


0

Відповідь дає по @Joel допомогли, за винятком того, що для користувачів вікон ви , можливо , доведеться включити відображення прихованих файлів / папок для доступу .git папку , в якій index.lock файл вже існує. Використовуйте це посилання, якщо ви не знаєте, як увімкнути приховані папки.


0

Видалення файлу index.lock, як заявив Schwern, вирішить цю проблему.

Ви можете видалити його, виконавши rm -f ./.git/index.lock

Команда rm використовується для видалення (видалення) файлів і каталогів.

-F означає силу, яка спонукає ваш комп'ютер видалити файли, не вимагаючи підтвердження

все ще не працює означає відкрити git через git bash, а не робити в терміналі

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