Git, ошибка: сбой удаленной распаковки: невозможно создать каталог временных объектов — путем создания новой ветки
Я пытаюсь создать новую ветку в своем репо.
Это сработало. Итак, я изменил несколько файлов и сделал:
Это сработало хорошо, но я попытался подтолкнуть его, и это не сработало:
Не знаю, почему не работает.
У меня есть права администратора на репо. Я подверг цензуре ссылку на репо, потому что это внутреннее репо с частной ссылкой.
Если кто-то придет к выводу, моим решением было просто удаление файлов на моем сервере разработки. Оказывается, мое хранилище на сервере разработки было переполнено.
Просто для справки, я получил это, потому что я случайно клонировал репо, используя учетную запись пользователя, которая была действительна на сервере, но не имела доступа на запись в репо (D’Oh!). Я исправил это, отредактировав запись «удаленное происхождение» в .git / config.
Проверьте права на каталог .git на стороне сервера (или создайте git init на стороне сервера от пользователя, отправившего запрос)
@MartinCR что вы редактировали в записи remote-origin в .git / config? Это было на удаленном сервере? или местный клон?
@ m4l490n в локальном клоне: в разделе [remote «origin»] я просто изменил имя пользователя в строке url = . на имя, у которого был доступ на запись
@MartinCR похоже, что это не сработает для меня. В используемом мной URL-адресе нет пользователя. Мой URL: ssh://git.server.com:2222/path/to/repo/repo.git
@ m4l490n интересно . у меня url = my.git.user@my.git.server:/path/to/repo.git — поэтому я предполагаю, что ваш сервер использует ssh с аутентификацией сертификата. У вас есть действующий сертификат в правильном месте?
@MartinCR У меня, должно быть, была опечатка. Проблема заключалась в том, что мне действительно нужно указывать пользователя при клонировании, а не только git.server.com . Должен быть user@git.server.com
Это сообщение об ошибке:
указывает на то, что в репозитории Git в сервер (а не в вашем Git) не хватает места или возникают аналогичные проблемы с сервером, 1 или он установлен неправильно. То есть, учитывая:
вам нужно будет войти в систему на машине, которая обслуживает HTTP-трафик на git.int.censoredlink , перейти в каталог scm/freeb/freebrep.git и исправить там установку. Скорее всего, это проблема с разрешениями: принимающий Git должен иметь возможность создать в области объектов каталог с именем incoming-XXXXXX с замененными идентификаторами X на уникальный идентификатор, а затем создать в этом каталоге подкаталог pack .
Все входящие объекты и файлы пакетов помещаются в эти каталоги в виде процедуры карантина, пока серверные обработчики Git не будут удовлетворены запросами на обновление ссылочного имени. Если push не удается, карантинный каталог просто удаляется. Если отправка прошла успешно, помещенные в карантин объекты и / или файлы пакетов переносятся (и тонкие пакеты корректируются) в обычную область хранилища объектов. Обратите внимание, что миграция может завершиться неудачно, даже если процесс карантина завершится успешно; но если это произойдет, вы получите сообщение об ошибке разные клиенту. (Эта ошибка также должна быть исправлена на сервере.)
Примечание: довольно необычно отправлять URL-адреса http:// , а не https:// или ssh:// . Изучите конфигурацию вашего сервера, чтобы узнать, кому будут принадлежать различные файлы, созданные таким образом, и какие разрешения будут у веб-сервера.
1 Если жесткий диск выходит из строя, Linux иногда помечает диск и / или его файловые системы только для чтения. Или, даже если у вас есть место на диске, у вас могут закончиться inodes. Ряд различных основных причин приведет к одинаковому наблюдаемому поведению на стороне вашего клиента. Если вы администратор Linux, проверяющий сервер, ищите сообщения системного журнала и учитывайте как вывод df , так и df -i .
Не совсем правильно, но, тем не менее, я проголосовал за это, поскольку он содержал подсказки, необходимые для быстрой отладки: mkdir objects/incoming-XXXXXX показал «на устройстве не осталось места» в случае, когда администратору сервера необходимо исправить это, с чем я только что столкнулся. Если бы вы могли переформулировать или перестроить ответ на это, было бы здорово. (Я согласен с все вашими замечаниями, включая последний абзац, но это не единственная причина такого эффекта.)
@mirabilos Это возможная причина Другой. Неправильные разрешения — более типичная проблема.
Error remote unpack failed unable to create temporary object directory
what’s that for?\nPush code from VsCode to the server : \n
fatal: sha1 file ‘ ‘ write error: Broken pipe\nerror: remote unpack failed: unable to create temporary object directory to \/var\/www\/staging.site.com\/staging.git\n! [remote rejected] master -> master (unpacker error)\nerror: failed to push some refs to ‘sitehost:\/var\/www\/site.com\/staging.git’\n \n
A common solution to this would be to change git user and git group permissions on the repo like this whilst in root : \n
# chown -R git:git ‘sitehost:\/var\/www\/site.com\/staging.git’\n \n
Then retry the git push . \n
Hope that helps. \n»,»bodyInMarkdown»:»@roygoode this error usually occurs in `git` when you are trying to execute a `git push` using a user with `ownership permissions` which are different to the `read write` permissions on the remote \/ destination repo. One of the most common reasons this occurs is when you create the repository locally using `sudo` or `root` privileges.\n\nA common solution to this would be to change `git` user and `git` group permissions on the repo like this whilst in `root`:\n«`bash\n# chown -R git:git ‘sitehost:\/var\/www\/site.com\/staging.git’\n«`\nThen retry the `git push`.\n\nHope that helps.\n»,»replies»:[<"id":734675,"conversation_id":165144,"body":"
ls -l ‘\/var\/www\/mySite’\ntotal 16\ndrwxr-xr-x 2 ubuntu ubuntu 4096 Sep 15 01:05 public\n-rwxr-xr-x 1 ubuntu ubuntu 11925 Sep 15 13:08 worker.log\n\n\/\/\/ and git hook is ROOT!! that i set post-receive in hooks dir.\nls -l ‘\/var\/repo\/site.git’\ntotal 32\n-rw-r—r— 1 root root 23 Sep 11 16:40 HEAD\ndrwxr-xr-x 2 root root 4096 Sep 11 16:40 branches\n-rw-r—r— 1 root root 66 Sep 11 16:40 config\n-rw-r—r— 1 root root 73 Sep 11 16:40 description\ndrwxr-xr-x 2 root root 4096 Sep 14 00:15 hooks\ndrwxr-xr-x 2 root root 4096 Sep 11 16:40 info\ndrwxr-xr-x 4 root root 4096 Sep 11 16:40 objects\ndrwxr-xr-x 4 root root 4096 Sep 11 16:40 refs\n \n
in VsCode i use ubuntu for git remote :\ngit remote add production ubuntu@myhost:\/var\/repo\/site.git\nSo what can i do? \n»,»bodyInMarkdown»:»@Yamis1745 \n«`\nls -l ‘\/var\/www\/mySite’\ntotal 16\ndrwxr-xr-x 2 ubuntu ubuntu 4096 Sep 15 01:05 public\n-rwxr-xr-x 1 ubuntu ubuntu 11925 Sep 15 13:08 worker.log\n\n\/\/\/ and git hook is ROOT!! that i set post-receive in hooks dir.\nls -l ‘\/var\/repo\/site.git’\ntotal 32\n-rw-r—r— 1 root root 23 Sep 11 16:40 HEAD\ndrwxr-xr-x 2 root root 4096 Sep 11 16:40 branches\n-rw-r—r— 1 root root 66 Sep 11 16:40 config\n-rw-r—r— 1 root root 73 Sep 11 16:40 description\ndrwxr-xr-x 2 root root 4096 Sep 14 00:15 hooks\ndrwxr-xr-x 2 root root 4096 Sep 11 16:40 info\ndrwxr-xr-x 4 root root 4096 Sep 11 16:40 objects\ndrwxr-xr-x 4 root root 4096 Sep 11 16:40 refs\n«`\nin VsCode i use ubuntu for git remote :\ngit remote add production ubuntu@myhost:\/var\/repo\/site.git\nSo what can i do?»,»user»:<"id":136106,"username":"RoyGoode","avatar":"\/\/www.gravatar.com\/avatar\/53e8e62738fff936b3ed026b90dcd3ee?s=100&d=https%3A%2F%2Fs3.amazonaws.com%2Flaracasts%2Fimages%2Fforum%2Favatars%2Fdefault-avatar-17.png","experience":<"award_count":"0","level":1,"points":"2,980","pointsUntilNextLevel":"2,020">,»achievements»:[],»reported»:null,»staff»:false,»subscribed»:false,»profile»:<"full_name":null,"bio":null,"twitter":"","github":"","website":"","employment":"","job_title":"Web Developer","location":"Tbilisi","flag":"Georgia","available_for_hire":0>,»dateSegments»:<"created_diff":"3 years ago">,»settings»:<"show_profile":false>,»links»:<"profile":"https:\/\/laracasts.com\/@RoyGoode">>,»likes»:[],»created_at»:»2021-09-15T17:25:31.000000Z»,»links»:<"delete":"\/discuss\/replies\/734676","like":"\/discuss\/replies\/734676\/likes","best_answer":"\/discuss\/conversations\/165144\/best">,»best_answer»:false,»dateSegments»:<"createdDiff":"1 year ago">>,<"id":734721,"conversation_id":165144,"body":"
$ chown -R git:git yourDirectory\n \n
This should change this: \n
-rw-r—r— 1 root root 23 Sep 11 16:40 HEAD\ndrwxr-xr-x 2 root root 4096 Sep 11 16:40 branches\n-rw-r—r— 1 root root 66 Sep 11 16:40 config\n-rw-r—r— 1 root root 73 Sep 11 16:40 description\ndrwxr-xr-x 2 root root 4096 Sep 14 00:15 hooks\ndrwxr-xr-x 2 root root 4096 Sep 11 16:40 info\ndrwxr-xr-x 4 root root 4096 Sep 11 16:40 objects\ndrwxr-xr-x 4 root root 4096 Sep 11 16:40 refs\n \n
-rw-r—r— 1 ubuntu ubuntu 23 Sep 11 16:40 HEAD\ndrwxr-xr-x 2 ubuntu ubuntu 4096 Sep 11 16:40 branches\n-rw-r—r— 1 ubuntu ubuntu 66 Sep 11 16:40 config\n-rw-r—r— 1 ubuntu ubuntu 73 Sep 11 16:40 description\ndrwxr-xr-x 2 ubuntu ubuntu 4096 Sep 14 00:15 hooks\ndrwxr-xr-x 2 ubuntu ubuntu 4096 Sep 11 16:40 info\ndrwxr-xr-x 4 ubuntu ubuntu 4096 Sep 11 16:40 objects\ndrwxr-xr-x 4 ubuntu ubuntu 4096 Sep 11 16:40 refs\n \n
Now retry your git push . If your SSH keys are correctly configured, then all should be good. \n
\r\nWe don’t learn tools for the sake of learning tools. Instead, we learn them because they help us accomplish a particular goal. With that in mind, in this series, we’ll use the common desire for a blog — with categories, tags, comments, email notifications, and more — as our goal. Laravel will be the tool that helps us get there. Each lesson, geared toward newcomers to Laravel, will provide instructions and techniques that will get you to the finish line. \r\n \r\n
Error remote unpack failed unable to create temporary object directory
what’s that for?\nPush code from VsCode to the server : \n
fatal: sha1 file ‘ ‘ write error: Broken pipe\nerror: remote unpack failed: unable to create temporary object directory to \/var\/www\/staging.site.com\/staging.git\n! [remote rejected] master -> master (unpacker error)\nerror: failed to push some refs to ‘sitehost:\/var\/www\/site.com\/staging.git’\n \n
A common solution to this would be to change git user and git group permissions on the repo like this whilst in root : \n
# chown -R git:git ‘sitehost:\/var\/www\/site.com\/staging.git’\n \n
Then retry the git push . \n
Hope that helps. \n»,»bodyInMarkdown»:»@roygoode this error usually occurs in `git` when you are trying to execute a `git push` using a user with `ownership permissions` which are different to the `read write` permissions on the remote \/ destination repo. One of the most common reasons this occurs is when you create the repository locally using `sudo` or `root` privileges.\n\nA common solution to this would be to change `git` user and `git` group permissions on the repo like this whilst in `root`:\n«`bash\n# chown -R git:git ‘sitehost:\/var\/www\/site.com\/staging.git’\n«`\nThen retry the `git push`.\n\nHope that helps.\n»,»replies»:[<"id":734675,"conversation_id":165144,"body":"
ls -l ‘\/var\/www\/mySite’\ntotal 16\ndrwxr-xr-x 2 ubuntu ubuntu 4096 Sep 15 01:05 public\n-rwxr-xr-x 1 ubuntu ubuntu 11925 Sep 15 13:08 worker.log\n\n\/\/\/ and git hook is ROOT!! that i set post-receive in hooks dir.\nls -l ‘\/var\/repo\/site.git’\ntotal 32\n-rw-r—r— 1 root root 23 Sep 11 16:40 HEAD\ndrwxr-xr-x 2 root root 4096 Sep 11 16:40 branches\n-rw-r—r— 1 root root 66 Sep 11 16:40 config\n-rw-r—r— 1 root root 73 Sep 11 16:40 description\ndrwxr-xr-x 2 root root 4096 Sep 14 00:15 hooks\ndrwxr-xr-x 2 root root 4096 Sep 11 16:40 info\ndrwxr-xr-x 4 root root 4096 Sep 11 16:40 objects\ndrwxr-xr-x 4 root root 4096 Sep 11 16:40 refs\n \n
in VsCode i use ubuntu for git remote :\ngit remote add production ubuntu@myhost:\/var\/repo\/site.git\nSo what can i do? \n»,»bodyInMarkdown»:»@Yamis1745 \n«`\nls -l ‘\/var\/www\/mySite’\ntotal 16\ndrwxr-xr-x 2 ubuntu ubuntu 4096 Sep 15 01:05 public\n-rwxr-xr-x 1 ubuntu ubuntu 11925 Sep 15 13:08 worker.log\n\n\/\/\/ and git hook is ROOT!! that i set post-receive in hooks dir.\nls -l ‘\/var\/repo\/site.git’\ntotal 32\n-rw-r—r— 1 root root 23 Sep 11 16:40 HEAD\ndrwxr-xr-x 2 root root 4096 Sep 11 16:40 branches\n-rw-r—r— 1 root root 66 Sep 11 16:40 config\n-rw-r—r— 1 root root 73 Sep 11 16:40 description\ndrwxr-xr-x 2 root root 4096 Sep 14 00:15 hooks\ndrwxr-xr-x 2 root root 4096 Sep 11 16:40 info\ndrwxr-xr-x 4 root root 4096 Sep 11 16:40 objects\ndrwxr-xr-x 4 root root 4096 Sep 11 16:40 refs\n«`\nin VsCode i use ubuntu for git remote :\ngit remote add production ubuntu@myhost:\/var\/repo\/site.git\nSo what can i do?»,»user»:<"id":136106,"username":"RoyGoode","avatar":"\/\/www.gravatar.com\/avatar\/53e8e62738fff936b3ed026b90dcd3ee?s=100&d=https%3A%2F%2Fs3.amazonaws.com%2Flaracasts%2Fimages%2Fforum%2Favatars%2Fdefault-avatar-17.png","experience":<"award_count":"0","level":1,"points":"2,980","pointsUntilNextLevel":"2,020">,»achievements»:[],»reported»:null,»staff»:false,»subscribed»:false,»profile»:<"full_name":null,"bio":null,"twitter":"","github":"","website":"","employment":"","job_title":"Web Developer","location":"Tbilisi","flag":"Georgia","available_for_hire":0>,»dateSegments»:<"created_diff":"3 years ago">,»settings»:<"show_profile":false>,»links»:<"profile":"https:\/\/laracasts.com\/@RoyGoode">>,»likes»:[],»created_at»:»2021-09-15T17:25:31.000000Z»,»links»:<"delete":"\/discuss\/replies\/734676","like":"\/discuss\/replies\/734676\/likes","best_answer":"\/discuss\/conversations\/165144\/best">,»best_answer»:false,»dateSegments»:<"createdDiff":"1 year ago">>,<"id":734721,"conversation_id":165144,"body":"
$ chown -R git:git yourDirectory\n \n
This should change this: \n
-rw-r—r— 1 root root 23 Sep 11 16:40 HEAD\ndrwxr-xr-x 2 root root 4096 Sep 11 16:40 branches\n-rw-r—r— 1 root root 66 Sep 11 16:40 config\n-rw-r—r— 1 root root 73 Sep 11 16:40 description\ndrwxr-xr-x 2 root root 4096 Sep 14 00:15 hooks\ndrwxr-xr-x 2 root root 4096 Sep 11 16:40 info\ndrwxr-xr-x 4 root root 4096 Sep 11 16:40 objects\ndrwxr-xr-x 4 root root 4096 Sep 11 16:40 refs\n \n
-rw-r—r— 1 ubuntu ubuntu 23 Sep 11 16:40 HEAD\ndrwxr-xr-x 2 ubuntu ubuntu 4096 Sep 11 16:40 branches\n-rw-r—r— 1 ubuntu ubuntu 66 Sep 11 16:40 config\n-rw-r—r— 1 ubuntu ubuntu 73 Sep 11 16:40 description\ndrwxr-xr-x 2 ubuntu ubuntu 4096 Sep 14 00:15 hooks\ndrwxr-xr-x 2 ubuntu ubuntu 4096 Sep 11 16:40 info\ndrwxr-xr-x 4 ubuntu ubuntu 4096 Sep 11 16:40 objects\ndrwxr-xr-x 4 ubuntu ubuntu 4096 Sep 11 16:40 refs\n \n
Now retry your git push . If your SSH keys are correctly configured, then all should be good. \n
Laravel 9 is here, and along with it comes a wide array of useful new features and tweaks. This includes an improved accessor\/mutator API, better support for Enum casting, forced scope bindings, a new database engine for Laravel Scout, and so much more.