GitLab 오류 수정 :“이 프로젝트에서 보호 된 분기에 코드를 푸시 할 수 없습니다”?
프로젝트에 개발자 액세스 권한이있는 동안 코드를 git으로 푸시하면 문제가 있지만 마스터 액세스 권한이 있으면 모든 것이 정상입니다. 문제는 어디에서 발생합니까? 그리고 그것을 고치는 방법?
에러 메시지:
오류 :이 프로젝트에서 보호 된 분기로 코드를 푸시 할 수 없습니다.
...
오류 : 일부 참조를 푸시하지 못했습니다 ...
문제는 없습니다. 모든 것이 예상대로 작동합니다.
GitLab에서는 일부 브랜치를 보호 할 수 있습니다. 기본적으로 유지 관리 / 소유자 사용자 만 보호 된 분기에 커밋 할 수 있습니다 ( 권한 문서 참조 ). master
브랜치 (branch)는 기본적으로 보호되어 있으며, 개발자는 메인 코드에 통합하기 전에 프로젝트 관리자가 병합 요청을 검증하도록 강제합니다.
프로젝트 설정에서 선택한 브랜치에 대한 보호 기능을 켜고 끌 수 있습니다 (GitLab 버전에 따라 다릅니다. 아래 지침 참조).
동일한 설정 페이지에서 개발자가 보호 된 분기로 푸시 할 수도 있습니다. 이 설정을 사용하면 보호가 필요한 작업 거부 git push --force
(리베이스 등) 로 보호가 제한됩니다 .
GitLab 9.3부터
프로젝트로 이동 : "설정"→ "저장소"→ "보호 된 분기"의 "확장"
이 변경 사항이 언제 도입되었는지 잘 모르겠습니다. 스크린 샷은 10.3 버전입니다.
이제 선택한 분기로 병합 또는 푸시 할 수있는 사용자를 선택할 수 있습니다 (예 : 푸시 요청 master
을 전혀 해제 하여 분기에 대한 모든 변경을 병합 요청을 통해 수행하도록 할 수 있음). 또는 "보호 해제"를 클릭하여 분기에서 보호를 완전히 제거 할 수 있습니다.
GitLab 9.0부터
GitLab 9.3과 유사하지만 "확장"을 클릭 할 필요가 없습니다. 모든 것이 이미 확장되었습니다 :
"설정"→ "저장소"→ 프로젝트로 이동하여 "보호 된 분기"로 스크롤하십시오.
프리 깃랩 9.0
프로젝트 : "설정"→ "보호 된 지점"(지정된 프로젝트의 '마스터'인 경우).
그런 다음 "보호 해제"또는 "개발자가 푸시 할 수 있음"을 클릭하십시오.
GitLab Enterprise Edition 9.3.0 용
기본적으로 마스터 브랜치는 보호되므로 보호 해제하십시오. :)
1- "프로젝트"를 선택하십시오
2- "리포지토리"를 선택하십시오
3- "분기"를 선택하십시오
4- "프로젝트 설정"을 선택하십시오
5- "보호 된 지점"에서 "확장"하려면 클릭
6- "보호 해제"버튼을 클릭 한 후
로컬 gitlab 서버의 "빈 지점"에서이 오류가 발생했습니다. 어떤 사람들은 "빈 지점에서 처음으로 밀 수 없다"고 언급했습니다. 브라우저를 통해 gitlab에 간단한 README 파일을 만들려고했습니다. 그런 다음 모든 것이 놀랍게 해결되었고 문제가 해결되었습니다! 나는 내가 주인이고 지점이 보호되지 않았다고 언급했다.
링크별로 변경해보십시오
https://docs.gitlab.com/ee/user/project/protected_branches.html
관리자 또는 개발자가 커밋하도록 프로젝트를 보호되지 않은 상태로 만듭니다.
이 문제에 대한 간단한 해결책은 gitlab에서 소유자 역할을하는 사람과 빠른 대화를 나누는 것입니다. 그는 하나의 파일 READ.md 또는 유사 파일을 밀어서 시작할 수 있습니다. 나중에 모든 것이 이전과 같이 작동합니다.
내 저장소에서 동일한 문제가 발생했습니다. 나는 저장소의 주인이지만 그런 오류가있었습니다.
프로젝트의 보호를 해제 한 다음 다시 보호하고 오류가 사라졌습니다.
우리는 이전 푸시와 문제가있는 푸시 사이에서 gitlab 버전을 업그레이드했습니다. 이 업그레이드로 버그가 발생했다고 가정합니다.
위의 솔루션은 문제가 무엇인지 명확하게 설명합니다. 리포지토리를 제어 할 수없는 경우 코드를 제출하는 가장 좋은 방법은 원본 리 포크의 포크를 만들고이 새 리포지토리에 코드를 제출하여 나중에 원래 리포지토리로 푸시 할 수 있습니다.
'Programing' 카테고리의 다른 글
특정 문자열에 대해 저장소의 모든 Git 및 Mercurial 커밋을 검색하는 방법은 무엇입니까? (0) | 2020.03.20 |
---|---|
Ems의 의미는 무엇입니까? (0) | 2020.03.20 |
C 전 처리기에서 Mac OS X, iOS, Linux, Windows를 안정적으로 감지하는 방법은 무엇입니까? (0) | 2020.03.20 |
클래스 멤버 함수 템플릿이 가상 일 수 있습니까? (0) | 2020.03.20 |
Sass .scss : 중첩 및 여러 클래스? (0) | 2020.03.20 |