Git, ошибка: удаленная распаковка не удалась: невозможно создать каталог временных объектов - При создании новой ветки

Хорошего дня.

Я пытаюсь создать новый филиал в моем репо.

Я сделал это:

Git ветка событий

Git Checkout события

Это сработало. Поэтому я изменил некоторые файлы и сделал

Git Status

Git добавить - все

Git Commit -m "Коммит"

Это работало хорошо, но я пытался подтолкнуть его, и это не сработало

Git push -u происхождение событий

Это ошибка:

Перечисление объектов: 9, сделано.
Подсчет объектов: 100% (9/9), сделано.
Дельта-сжатие с использованием до 4 потоков.
Сжатие объектов: 100% (5/5), сделано.
Написание объектов: 100% (5/5), 716 байт | 716,00 КиБ / с, готово.
Всего 5 (дельта 4), повторно 0 (дельта 0)
ошибка: удаленная распаковка не удалась: невозможно создать каталог временных объектов
На http://git.int.censoredlink/scm/freeb/freebrep.git
! [удаленные отклоненные] события -> события (ошибка распаковщика)
ошибка: не удалось отправить некоторые ссылки на " http://stsu@git.int.censoredlink/scm/freeb/freebrep.git "

Я не знаю, почему это не работает.

У меня есть права администратора на репо. Я подверг цензуре ссылку на репо, потому что это Inpo Repo с частной ссылкой, надеюсь, это нормально.

Надеюсь, кто-нибудь может мне помочь.

10 ответов

Это сообщение об ошибке:

error: remote unpack failed: unable to create temporary object directory

указывает на то, что репозиторий Git на сервере (не на вашем Git) установлен неправильно. То есть дано:

To: http://git.int.censoredlink/scm/freeb/freebrep.git

вам нужно будет войти на компьютер, который обслуживает HTTP-трафик на git.int.censoredlink, подойди к scm/freeb/freebrep.git каталог, и исправьте установку там. Скорее всего, это проблема с разрешениями: принимающий Git должен иметь возможность создавать в области объектов каталог с именем incoming-XXXXXX с Xs заменить уникальным идентификатором, а затем создать в этом каталоге pack подкаталог.

Все входящие объекты и файлы пакетов помещаются в эти каталоги в карантинной процедуре до тех пор, пока перехватчики Git на стороне сервера не будут удовлетворены запросами на обновление ссылочного имени. Если проверка не удалась, каталог карантина просто удаляется. Если отправка завершается успешно, объекты на карантине и / или файлы пакетов переносятся (и настраиваются тонкие пакеты) в область хранения обычных объектов. Обратите внимание, что миграция может завершиться неудачей, даже если процесс карантина завершится успешно; но если это так, вы получите другую ошибку, сообщенную клиенту. (Эта ошибка также должна быть исправлена ​​на сервере.)

Примечание: довольно необычно http:// скорее, чем https:// или же ssh:// URL-адрес. Проверьте конфигурацию вашего сервера, чтобы увидеть, кому будут принадлежать различные файлы, созданные таким образом, и какие разрешения будут иметь веб-сервер.

90% шанс, что это проблема с разрешениями.

  1. Войдите на удаленный сервер.
  2. Перейдите в «/ scm / freeb», где находится «freebrep.git».
  3. вызовите chown -R yourusername freebrep.git (где ваше имя пользователя - stsu)
  4. Попробуйте снова. Теперь он должен позволять писать объекты.

Если вы работаете root user, Пожалуйста, сначала изменить пользовательyour git user а потом init your git directory:

  1. если вы root -> $ [root@server ~]#
  2. сменить пользователя -> $ su - имя пользователя
  3. инициализировать репозиторий git -> [имя пользователя @ сервер ~] $ git init --bare git-repo.git
  4. push from client -> Теперь вы можете нажать из клиента:
    git remote add yourAliasName ssh://username@IP-or-HOST:sshPort/home/username/git-repo.git

Примечание.
Я предполагал, что вы создалиpublic/private key уже в вашем клиенте и передал открытый ключ в /home/username/.ssh/authorized_keysфайл сервера. В противном случае вы должны сделать это до шага (4).

Я столкнулся с той же ошибкой, когда попытался нажать на "git server". Проблема была на стороне сервера. Вы можете подождать некоторое время, пока сервер вернется в режим онлайн или просто связаться с администратором, чтобы исправить это:)

Недавно я столкнулся с этой ошибкой. Проблема заключалась в том, что у пользователя не было достаточных разрешений, например git remote add production ssh: // username@{your-ip} / var / test / test.git`, убедитесь, что имя пользователя не имеет разрешений

Я получал ту же ошибку, пока не удалил подкаталог.git в удаленном репозитории git.

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

Я был перенаправлен сюда из-за этого сообщения об ошибке.

ошибка: удаленная распаковка не удалась: невозможно создать каталог временных объектов

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

например x.x.x.x:/nas/git on /mnt/git type nfs (ro,.....

Для меня это была свисающая, разбитая сессия gitk: исключительная блокировка доступа к файлам на машине windoze.

Проблема : ошибка: удаленная распаковка не удалась: невозможно создать каталог временных объектов. На https://url.com/scm/som/project.git! [удаленный отказ] релиз/проект-PROD-year_month_WeekNumber -> релиз/проект-PROD-year_month_WeekNumber (ошибка распаковщика) ошибка: не удалось отправить некоторые ссылки на «https://url.com/scm/som/project.git»

Решение: - откройте корневой каталог проекта gitbash goto.

чмод 777 *

затем снова попробуйте git push

это работает для меня

Скажем, на вашем Mac вы подключаетесь к собственному серверу ubuntu на AWS.

Скорее всего, вы будете подключаться как пользователь «ubuntu».

Если разрешения не являются проблемой (это только вы), просто войдите на свой сервер ubuntu и просто

      ] chown ubuntu:ubuntu

весь рассматриваемый каталог git. Это будет работать нормально.

Другие вопросы по тегам