Ошибка Git - не удалось отменить связь старого 'some / file / name' (неверный дескриптор файла) - PullRequest
40 голосов
/ 15 декабря 2010

При попытке переключиться / оформить заказ (в TortoiseGit) на другую ветку я получаю следующую ошибку:

error: unable to unlink old 'foo/bar.cfc' (Bad file descriptor)

Что это значит?

Ответы [ 5 ]

42 голосов
/ 15 декабря 2010

Используете ли вы другие инструменты при использовании TortoiseGit?

Например, в этом проекте упоминается взаимодействие с Visual Studio:

Если вы видите ошибки, связанные с невозможностью отсоединить старые файлы при выполнении команд git в Windows, вполне вероятно, что у вас открыто решение chrome в Visual Studio, и оно обновляет IntelliSense, который на короткое время блокирует файлы случайным образом. Обходной путь - либо полностью отключить IntelliSense, либо обязательно временно закрыть решение при выполнении любых операций git, которые могут затронуть большое количество файлов.

Другими словами, сохраняется ли проблема, если вы закроете столько запущенных приложений, сколько сможете?
Позволит ли TortoiseGit оформить заказ в другой ветке?

28 голосов
/ 29 февраля 2012

Я столкнулся с этой проблемой - Eclipse блокировал файл, хотя он не был открыт в редакторе.Как только я закрою затмение, я смогу оформить заказ.

20 голосов
/ 16 августа 2013

Файл заблокирован другой программой и не может быть перезаписан. Посмотрите, какое приложение заблокировало файл , закройте это приложение и повторите попытку.

4 голосов
/ 10 июля 2014

Если ваша проблема основана на файле блокировки затмения, вы можете запустить затмение с помощью -Dosgi.locking=none.Я столкнулся с этой проблемой с затмением Luna 4.4.0

1 голос
/ 24 июля 2018

Я получаю ту же ошибку с приложением GitHub для настольных ПК, когда я пытаюсь вытащить.Я решил эту проблему, закрыв visual studio и запустив приложение github для настольных ПК в режиме администратора.

...