Внезапно не в состоянии получить извлечение из источника - PullRequest
3 голосов
/ 17 сентября 2010

В моем репозитории я удаленно отслеживаю наш основной репозиторий, который пуст. У меня никогда не было проблем с извлечением из происхождения прошлого.

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

fatal: '/users/integrator/project' does not appear to be a git repository
fatal: The remote end hung up unexpectedly
error: Could not fetch origin

Я ничего не изменил, и хранилище определенно все еще там. Есть несколько человек, которые имеют доступ к учетной записи интегратора, но они обычно делают слияния и вытягивания. Мы не разрешаем отправку в этот репозиторий.

Мой вопрос: что могло послужить причиной этого? Или я могу использовать какие-либо средства диагностики, чтобы выяснить, что происходит не так? Я не единственный пользователь, у которого вдруг возникла эта проблема, поэтому проблема скорее всего на стороне источника.

Обновление:

Когда я пытаюсь клонировать пустой репозиторий, я получаю следующую ошибку:

git clone /users/integrator/project
Cloning into project...
fatal: failed to open '/users/integrator/project/.git/objects': No such file or directory

Вот список содержимого / users / integrator / project:

config
HEAD
packed-refs
ssh_helper
bin/
hooks/
info/
  exclude
objects/
  [lots of folders with two character long names]
  info/
  pack/
refs/
  heads/
  tags/

1 Ответ

5 голосов
/ 17 сентября 2010

Я бы посмотрел, что находится в каталоге /users/integrator/project на вашем сервере. Это похоже на git-репозиторий? Он должен иметь по крайней мере каталог objects, каталог refs и файл HEAD, чтобы быть подходящим хранилищем git. Содержит ли он все это?

Еще одна вещь, которую нужно проверить, - вы можете войти прямо на сервер и клонировать из хранилища.

Кроме того, если вы все еще не можете выяснить, в чем дело, я бы порекомендовал отредактировать ваш вопрос, чтобы показать список того, что находится в /users/integrator/project, и, возможно, мы сможем предоставить дополнительную помощь с этой информацией.

изменить на основе ваших правок:

Учитывая ошибку, похоже, у вас есть каталог .git в вашем пустом хранилище. Вы можете проверить с помощью ls -a, чтобы показать скрытые файлы. Если это так, Git может сначала искать каталог .git в вашем репозитории, а не сам каталог вашего репозитория. Я бы посмотрел на это, а затем убрал внутренний .git или удалил его, чтобы Git мог получить доступ к вашему фактическому хранилищу.

Если в вашем репо нет каталога .git, поищите в окрестностях что-нибудь с именем .git или project.git; Git будет искать различные пути по имени, указанному вами, и пустое имя пути без подкаталога или суффикса .git будет ближе к концу того, что он ищет.

...