nes
> Ну так просто было интересно узнать что и как в новых стандартах.
открываешь https://en.cppreference.com/ и читаешь. Вообще не понятно как ты программистом работаешь если не умеешь искать информацию самостоятельно?
есть какой-то способ делать пул в гите чтобы не обрывало соединение из-за проблем с интернетом?
у меня эта пробщема началась еще где-то год, на двух провайдерах (ростелеком и мтс). качаю репозиторий. и если он большой, то очень часто в середине выдает такое
error: RPC failed; curl 92 HTTP/2 stream 5 was not closed cleanly: CANCEL (err 8)
error: 15610 bytes of body are still expected
fetch-pack: unexpected disconnect while reading sideband packet
fatal: early EOF
fatal: fetch-pack: invalid index-pack output
сейчас даже свой собственный проект скачать не могу - а там всего-то 50мб.
если долго долбится, то иногда оно даже скачивает - то есть проблема четко в том что где-то обрыв соединения
war_zes
интересовался этим вопросом и вроде бы никак. Единственный вариант - сделать git clone на VPS, и оттуда слить каталог любой утилитой перекачивания файлов поддерживающей докачку.
Я только что проверил, GitHub поддерживает accept-ranges заголовок (то есть докачку) для релизов. Попросил чат-бота написать GitHub Actions workflow, который при вызове делает релиз, включающий полный архив исходников, вместе с .git папкой.
Проверил - работает.
Именно пулл или конкретно клон?
Если это пулл или фетч в уже инициализированной локальной репе, то там по идее уже скачанные объекты должны оставаться и по-новой не перекачиваться.
Соответственно, альтернатива клону — сделать гит инит на пустой папке, добавить гит ремот вручную и сфетчивать до завершения.
Имбирная Ведьмочка
> сфетчивать до завершения.
тоже вываливается с fatal: early EOF
я так-то тоже попробовал кинуть в репо скачаные в архиве в браузере файлы - на фетче выдало ровно тоже самое
war_zes
фетч качает папку .git, так что скачанные в браузере файлы ему не помогут.
Можно еще попробовать выкачивать `git clone —depth=1` чтоб слегка уменьшить архив и соответственно повысить шансы докачать, а потом уже докачивать остальное.
Сделать кучу git fetch/git pull, указывая не имя ветки в удаленной репе, а хэши конкретных коммитов в правильном порядке.
Dmitry_Milk
> Сделать кучу git fetch/git pull, указывая не имя ветки в удаленной репе, а хэши конкретных коммитов в правильном порядке.
У fetch можно указать опцию depth, тогда вроде как он ограничивает глубину коммитов, но репозиторий при этом будет неполноценный, так как у первых коммитов в истории не будет родителей хотя они на самом деле есть и вообще мало кто захотел бы погружаться в такие глубины гита потому что если что-то сломается, то починить обратно будет уже очень сложно. И если там даже последние коммиты много занимают, то это никак не поможет.
Гит хуб видимо заподозрил подозрительную активность в шизофренической манипуляции репозиториями, вот и решил попридержать коня Варзицу.
war_zes
> есть какой-то способ делать пул в гите чтобы не обрывало соединение из-за проблем с интернетом?
Для начала неплохо бы установить в чем причина обрыва. Если хочешь помощи, надо предоставить подробную информацию, подробные логи, причина обрыва в чем, тебя мама не учила штоле? ;)
war_zes
git config --global http.version HTTP/1.1
помогает так?
war_zes если через VPN работает нормально, то провайдер хочет чтобы ты перешел на отечественные аНАЛОГИ
Если также всё, то у тебя видимо есть некоторые проблемы с репозиторием. Видимо есть какой-то лимит на количество репозиториев, либо на их общий объём.
nes
> У меня тут на работе поддержка древнего софта, который компиляется только 2008 студией,
> приходится воротить свои велосипеды.
С++ 98 не так уж и плох. Опять же, всё зависит кода. Если там легаси с велосипедами, чуть менее чем полностью, то сочувствую.
++98 это всё равно что дрочить одной рукой.