Gitlab: не могу подтолкнуть к мастеру - PullRequest
0 голосов
/ 26 июня 2018

Я не могу найти резон для возможности проталкивать изменения в любой ветке, кроме главной. Я имею в виду, у меня есть основная ветка, которую я создал, отправив свой код в gitlab. Тогда любое предварительное изменение в основной ветке не будет выполнено. Тем не менее, я продублировал свою основную ветку с другой веткой с именем Develop, и на ней я могу внести свои изменения. Проще говоря, позвольте мне описать все, что я делаю после поиска в течение некоторого времени:

C:\dev\test>git fetch --all
Fetching origin

C:\dev\test>git reset --hard origin/master
HEAD is now at 64031f0 just created by generator

... some changes via my editor ....

C:\dev\test>git commit -a -m "changed project name"
[master 5abf2f2] changed project name
 1 file changed, 5 insertions(+), 5 deletions(-)

C:\dev\test>git push -u origin/master
fatal: 'origin/master' does not appear to be a git repository
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

C:\dev\test>git push
Counting objects: 3, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 365 bytes | 365.00 KiB/s, done.
Total 3 (delta 2), reused 0 (delta 0)
remote: Error: This is the master branch, and the commit has no merge request
remote: 64031f03f1723e3399ad467dbbb536942fe144f0 5abf2f29e0ced51289d1fcd684b1510acd354764 refs/heads/master
To ssh://gitlab.mycomp.net:2222/myportfolio/mycomp-app-sf-just-test.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'ssh://git@gitlab.mycomp.net:2222/myportfolio/mycomp-app-sf-just-test.git'

C:\dev\test>git push -u origin master
Counting objects: 3, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 365 bytes | 365.00 KiB/s, done.
Total 3 (delta 2), reused 0 (delta 0)
remote: Error: This is the master branch, and the commit has no merge request
remote: 64031f03f1723e3399ad467dbbb536942fe144f0 5abf2f29e0ced51289d1fcd684b1510acd354764 refs/heads/master
To ssh://gitlab.mycomp.net:2222/myportfolio/mycomp-app-sf-just-test.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'ssh://git@gitlab.mycomp.net:2222/myportfolio/mycomp-app-sf-just-test.git'

В двух словах, большинство ответов, которые я видел вокруг, говорят, что нужно использовать git push -u или снять защиту с ветки. Теперь моя ветка проекта gitlab не защищена, и, как вы можете видеть, я использую -u

Ответы [ 2 ]

0 голосов
/ 26 июня 2018

Ваша проблема, вероятно, связана с тем, как права доступа работают с Gitlab.

Если вы перейдете по списку моих связанных документов, вы увидите, что:

Push to protected branches

разрешено только людям, имеющим Maintainer (был Мастером до 11.0 ) и Владелец разрешений.


не может найти резонанс для возможности проталкивать изменения в любой ветви, кроме главной

Это потому, что только мастер защищен по умолчанию. Следовательно, вам понадобятся повышенные разрешения, чтобы перейти непосредственно к этой ветви.

0 голосов
/ 26 июня 2018

Похоже, что GitLab не позволяет вам напрямую перейти на master. Это обычная практика. Вместо этого вы должны создать запрос на слияние из вашей функциональной ветви в master. Когда вы принимаете запрос на слияние в пользовательском интерфейсе GitLab, он автоматически создает коммит слияния и перемещает ветку master.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...