У меня проблема, когда я отправляю свои коды в git, когда у меня есть доступ разработчика в моем проекте, но все нормально, когда у меня есть основной доступ. Откуда проблема? И как это исправить?
Сообщение об ошибке:
ошибка: вы не можете отправить код в защищенные ветви этого проекта.
...
ошибка: не удалось отправить некоторые ссылки на ...
Ответы:
нет проблем - все работает как положено.
В GitLab некоторые ветки могут быть защищены. По умолчанию только пользователи Maintainer / Owner могут фиксировать защищенные ветви (см. Документы по разрешениям ).
master
ветвь защищена по умолчанию - она заставляет разработчиков выдавать запросы на слияние, которые должны быть проверены сопровождающими проекта перед их интеграцией в основной кодВы можете включать и выключать защиту для выбранных веток в настройках проекта (где точно зависит от версии GitLab - см. Инструкции ниже).
На этой же странице настроек вы также можете позволить разработчикам проталкивать защищенные ветки. Если этот параметр включен, защита будет ограничена отклонением операций, требующих
git push --force
(перезагрузка и т. Д.)Начиная с GitLab 9.3
Перейти к проекту: «Настройки» → «Хранилище» → «Развернуть» на «Защищенные ветви»
Я не совсем уверен, когда это изменение было введено, скриншоты из версии 10.3.
Теперь вы можете выбрать, кому разрешено объединять или вставлять в выбранные ветви (например: вы можете вообще отключить push-сообщения
master
, заставляя все изменения в ветви вносить с помощью запросов на слияние). Или вы можете нажать «Снять защиту», чтобы полностью снять защиту с ветки.Начиная с GitLab 9.0
Аналогично GitLab 9.3, но не нужно нажимать «Развернуть» - все уже развернуто:
Зайдите в проект: «Настройки» → «Хранилище» → прокрутите вниз до «Защищенные ветви».
Pre GitLab 9.0
Проект: «Настройки» → «Защищенные ветви» (если вы хотя бы «Мастер» данного проекта).
Затем нажмите «Снять защиту» или «Разработчики могут нажать»:
источник
для GitLab Enterprise Edition 9.3.0
По умолчанию ветка master защищена, поэтому снимите защиту :)
1-Выберите свой «проект»
2-Выберите «Хранилище»
3-Выберите "филиалы"
4-Выберите «Настройки проекта»
5-в "Защищенные ветви" нажмите, чтобы "развернуть"
6 и после нажатия на кнопку «снять защиту»
источник
Я столкнулся с этой ошибкой в "пустой ветке" на моем локальном сервере gitlab. Некоторые люди упоминали, что «вы не можете впервые нажать на пустую ветку». Я попытался создать простой файл README на gitlab через мой браузер. Тогда все исправлено удивительно, и проблема разобралась !! Я упоминаю, что я был мастером, и филиал не был защищен.
источник
Попробуйте внести изменения по ссылке
https://docs.gitlab.com/ee/user/project/protected_branches.html
сделать проект незащищенным для сопровождающего или разработчика для вас
источник
Простое решение этой проблемы - быстрый чат с человеком, который имеет роль владельца в gitlab. Он может нажать один файл READ.md или аналогичный, чтобы просто начать с. Позже все будет работать как раньше.
источник
Я был на Windows, когда появилась эта проблема.
Ошибка странная, потому что это происходит до того, как я смог ввести свое имя пользователя и пароль. Что делать, если там был кеш или что-то подобное? Я покопался в Интернете и нашел ответ на форуме поддержки gitlab :
В учетных данных Windows я нашел две записи GitLab для старой учетной записи. Я удаляю оба, и теперь это работает!
Панель:
источник
Это считается особенностями в Gitlab.
Maintainer / Owner
доступ никогда не сможет принудительно нажать снова для ветки по умолчанию и защищенной, как указано в этой документацииисточник
Я столкнулся с той же проблемой в моем хранилище. Я мастер репозитория, но у меня была такая ошибка.
Я снял защиту с моего проекта, а затем снова защитил, и ошибка исчезла.
Мы обновили версию gitlab между моей предыдущей версией и проблемной. Я полагаю, что это обновление создало ошибку.
источник
Приведенные выше решения четко объясняют, в чем проблема; если у вас нет контроля над репо, лучший способ отправить свой код - это создать форк исходного репо и отправить свой код в этот новый репо, чтобы позже вы могли перенести его в исходный репо.
источник