Git ошибка при попытке нажатия - отклонение до приема
Когда я пытаюсь нажать изменение, которое я совершил, я получаю следующую ошибку...
git.exe push -v --progress "origin" iteration1:iteration1
remote: *********************************************************************
To ssh://[email protected]/cit_pplus.git
! [remote rejected] iteration1 -> iteration1 (pre-receive hook declined)
error: failed to push some refs to 'ssh://[email protected]/cit_pplus.git'
Что происходит?
Ответы
Ответ 1
Вы должны спросить, кто будет поддерживать репо в [email protected]/cit_pplus.git
.
Ваши коммиты были отклонены pre-receive
hook этого репо (что настраиваемый пользователем script, предназначенный для анализа входящих комментирует и решает, насколько они достаточно хороши для принятия в репо).
Также неплохо попросить человека обновить крючок, чтобы он напечатал причины отклонения.
Если разработчик - это вы сами, то похоже, что у вас возникла проблема с настройкой на стороне сервера. Пожалуйста, поделитесь дополнительной информацией.
Ответ 2
Готов поспорить, что вы пытаетесь непереталкивать вперед, а крючок блокирует его. Если это так, просто запустите git pull --rebase
, прежде чем нажимать для восстановления локальных изменений на самой новой кодовой базе.
Ответ 3
Размер файла важен. Для одного файла существует ограничение ~ 120 МБ. В моем случае файл .gitignore, использующий Visual Studio, был в списке, но файл все еще был зафиксирован. При использовании git cli мы можем получить более подробную информацию об ошибке.
хук предварительного получения отклонен был в результате большого файла. В основном валидация толчка.
Чтобы решить эту проблему, я удалил последний коммит, используя:
git reset --soft HEAD~1
Затем я исключил файл из коммита.
Примечание: Используйте HEAD ~ N, чтобы вернуться к N числу предыдущих коммитов. (т.е. 3, 4) Всегда используйте переключатель --soft для сохранения изменений в папке
Надеюсь, поможет.
Ответ 4
Это может быть связано с тем, что у вас не было прав доступа для отправки коммита в ветку, например master
. Вы можете попросить сопровождающего дать вам право выдвигать коммиты.
Ответ 5
В моем случае я получил это сообщение, потому что ветвь была отмечена как "Защищенная" в GitLab.
Ответ 6
У меня была эта проблема при попытке объединить изменения с размером файла больше, чем разрешен удаленный репозиторий (в моем случае это был GitHub)
Ответ 7
Я получил это сообщение, когда сервер GitLab претерпел некоторые изменения. На следующий день толчок работал отлично. В любом случае, как указывали другие, проконсультируйтесь с вашим сопровождающим.
Ответ 8
Я столкнулся с этой же проблемой.
Для меня это решило переключиться на другую ветку и затем вернуться к первоначальной.
Не уверен, что причина подчеркивания была, но это исправило это.
Ответ 9
Это на самом деле происходит, когда YACC включен на стороне сервера в BitBucket. YACC позволяет указывать имена проблем JIRA в сообщении коммита. Поэтому всякий раз, когда вы что-либо делаете, сохраняйте свой номер JIRA в сообщении о коммите, а затем дополнительно вы можете добавить свое собственное сообщение.
Ответ 10
Я использовал GitKraken, и мы создали локальную ветвь, затем мы объединили две удаленные ветки в ней, а затем мы попытались подтолкнуть локальную ветвь к источнику. Он не работал с тем же сообщением об ошибке.
Решение состояло в том, чтобы создать локальную ветвь и выдвинуть ее сначала в источник, а затем выполнить слияние.
Ответ 11
Проблема: "PUSH Failed refs/head / - крюк предварительного получения отклонен"
Я столкнулся с проблемой невозможности перенести мои изменения в мою исходную ветку и что-либо в основную ветку репозитория конкретного проекта, так как размер этого репо превысил жесткий предел в 2 ГБ. Это была ошибка. Это потому, что мы неосознанно поместили тестовые данные в bitbucket из других ветвей тестирования.
PUSH Сбой refs/head / - крюк предварительного получения отклонен
Итак, попытка проверки заключается в том, что то же самое с другим репозиторием проекта, и у них не было никаких проблем.
Fix:
Мой коллега заметил, что когда мы клонировали проект локально, размер проекта составлял 110 МБ. Итак, мы начали очищать ранее объединенные ветки и активные ветки, которые больше не требуются. Как только эта очистка была сделана для нескольких веток, мы поняли, что размер репо резко сократился с 2 ГБ до 120 МБ. Затем мы попытались перенести изменения в мою ветку, и это сработало.
Ответ 12
Если это кому-то поможет:
У меня было пустое хранилище без основной ветки для снятия защиты (в Gitlab), поэтому перед запуском git push -u origin --all
-
git push -u origin master
я должен был запустить git push -u origin master
, - временно снять защиту с главной ветки
- подтолкнуть остальных (
--all
и --tags
)
Ответ 13
Я получил это, пытаясь нажать на экземпляр dokku. Оказывается, диск был заполнен на моем сервере.
Ран:
du -f
И результат был:
Filesystem Size Used Avail Use% Mounted on
udev 476M 0 476M 0% /dev
tmpfs 100M 4.4M 95M 5% /run
/dev/xvda1 7.8G 7.4G 8.9M 100% /
Ответ 14
В моем случае у нас есть хуки для сообщений фиксации, наш серверный скрипт принимает коммиты, если они имеют специальный формат для сообщения фиксации "<JIRA ID><Message>"
. Он (ловит) отклоняет коммит, если соответствующий билет Jira не существует или в сообщении коммита есть специальные символы. Я сталкиваюсь с этой ошибкой, когда я добавляю /, [,> и т.д. В сообщении коммита, удаление этих работает нормально.
Ответ 15
Для меня авторизация на удаленном git сервере решит проблему. ![enter image description here]()
Ответ 16
В моем случае это потому, что я случайно добавил гигантский файл к своему незафиксированному пушу, и я не мог избавиться от него, независимо от того, какое нажатие или сброс или rm я сделал после.
Моё грязное, но работоспособное решение - переименовать текущий каталог, повторно клонировать каталог в локальный и отразить изменения вручную в локальном каталоге...
Звучит не очень хорошо, но работает...
Ответ 17
Ошибка для меня состояла в том, что в проекте не было создано ни одной ветки, и моя роль была разработчиком, поэтому я не мог создать какую-либо ветку, требовать, чтобы они дали мне соответствующие разрешения и все в порядке сейчас!
Ответ 18
мерзавец --rebase
Работал на меня. Спасибо
Ответ 19
Bitbucket: проверьте наличие разрешений для веток в настройках (это может быть "Запретить все"). Если это не сработает, просто клонируйте вашу ветку в новую локальную ветку, перенесите изменения в удаленную (будет создана новая удаленная ветка) и создайте PR.
Ответ 20
Я столкнулся с той же ошибкой, после проверки у меня был доступ разработчика и я не мог опубликовать новую ветку. Добавление более высоких прав доступа решило эту проблему. (Gitlab)
Ответ 21
Я получил эту ошибку с GitHub Gist.
Я пытался отправить коммит с файлами в подкаталогах.
Оказалось, гист может иметь файлы только в корневом каталоге.
Ответ 22
Указание версии node.js может решить проблему следующим образом
{
"name": "myapp",
"description": "a really cool app",
"version": "1.0.0",
"engines": {
"node": "10.3.0"
}
}