Исправлена ошибка «отправить отключение» при отправке в репозиторий bitbucket через SSH

#git #ssh #bitbucket

#git #ssh #bitbucket

Вопрос:

У меня есть локальный репозиторий, который раньше не отправлялся в bitbucket.

Моя рабочая папка (с локальной папкой .git) выросла до 1,7 ГБ, поэтому я решил отправить ее в bitbucket в качестве дополнительной резервной копии.

  1. Я создал новый репозиторий bitbucket (workspace / repository.git)
  2. В моем локальном репозитории я добавил новый SSH-пульт под названием «origin» (git@bitbucket.org:workspace/repository.git )
  3. Обратите внимание, что ключ id_rsa уже настроен локально и в bitbucket (для других проектов)
  4. Теперь я пытаюсь git push , но это всегда приводит к следующей ошибке:

Вывод:

 > git push

Pushing to git@bitbucket.org:workspace/repository.git
Enumerating objects: 62975, done.
Counting objects:   0% (1/62975)
Counting objects:   1% (630/62975)
...
Counting objects:  99% (62346/62975)
Counting objects: 100% (62975/62975)
Counting objects: 100% (62975/62975), done.
Delta compression using up to 12 threads
Compressing objects:   0% (1/33144)
Compressing objects:   1% (332/33144)
...
Compressing objects:  99% (32813/33144)
Compressing objects: 100% (33144/33144)
Compressing objects: 100% (33144/33144), done.
Writing objects:   0% (1/62975)
Writing objects:   1% (632/62975)
Writing objects:   1% (1094/62975), 3.45 MiB | 2.79 MiB/s
...
Writing objects:  29% (18265/62975), 70.41 MiB | 1.13 MiB/s
Writing objects:  29% (18282/62975), 71.57 MiB | 1.16 MiB/s
client_loop: send disconnect: Broken pipe
fatal: the remote end hung up unexpectedly
fatal: the remote end hung up unexpectedly
 

Основываясь на подобных проблемах, я уже пытался обновить ~/.ssh/config это:

 > cat ~/.ssh/config

Host *
   ServerAliveInterval 600
   TCPKeepAlive yes
   IPQoS=throughput
 

Ошибка возникает через 30-60 секунд — она всегда завершается ошибкой в другой позиции.

Что может вызвать эту проблему и как ее можно исправить?

Ответ №1:

Я не думаю, что это связано с ключом SSH, который правильно аутентифицирует вас в BitBucket.

Это больше связано с ограничением размера репозитория BitBucket, как указано здесь: если у вас есть большой гигантский коммит, который превышает 1 ГБ, он не сможет загрузить.

Попробуйте использовать в своем локальном репозитории инструмент, github/git-sizer позволяющий оценивать не только глобальный размер репозитория, но и размер его крупнейших объектов.

Комментарии:

1. Абсолютно! После создания нового локального репозитория я смог внести изменения (без истории фиксации за последние 2 года). К сожалению, я не смог сохранить исторические коммиты, но в моем случае это нормально