GitLabで新規にリポジトリを作って、初めてpushしたら
remote: GitLab: You don't have permission
となってしまいました。
これは何でしょう?
目次
GitLabで新規にリポジトリを作成
GitLabは、便利なGitのリポジトリ管理インターフェースです。
GitLabのインストール方法は以下の通りです。
GitLabで新しいリポジトリを作成します。
その後、GitLabの指示通りに最初のコミットとプッシュを、Git Bash(MSysgit)というGitのコマンドラインから行います。
1 2 3 4 5 6 7 |
mkdir xxx cd xxx git init git add README.md git commit -m "first commit" git remote add origin git@aaa.bbb.ccc:root/xxx.git git push -u origin master |
すると、以下のようにエラーが発生します。
To git@aaa.bbb.ccc:root/xxx.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to ‘git@aaa.bbb.ccc:root/xxx.git’
git did not exit cleanly (exit code 1)
何じゃこれ?
GitLab: You don't have permission を解決する方法
You don't have permission という事なので単純に権限がないんだろうか?
GitLabの権限は以下にまとめています。
そういえば、Developer権限ではタグを作ることができるのに、削除することができません。
試しにGitLabの権限設定で
Developerではなくて、Masterに変更してみると。。。
。。。
push 成功しました!
いや、待てよ。
でも、おかしいだろ。
master で運用する訳にはいかないだろ。
という訳で更に調べてみました。
GitLab 7.4 からデフォルトで、デベロッパー(Developer) の push は 保護 (protect)
どうやら、
GitLab 7.4 からデフォルトで、デベロッパー(Developer) の push は 保護 (protect) 、つまり不可となっているようです。
なんじゃそりゃ。
この設定を変更するには次のようにします。
GitLabでプロジェクトを選択して
Settings ⇒ Protected branches にて
"Allow developers to push" を有効化(enable) します。
なんか、よくわからない「保護」設定。
Gitについてのおすすめの本
↓Gitについてのおすすめの本はコチラ
コメント
[…] GitLabで新規リポジトリを作ってpushしたら、You don't have permission error: failed to… Git スポンサーリンク スポンサーリンク シェアする Twitter Facebook はてブ Pocket LINE コピー うらしたをフォローする スポンサーリンク うらした urashita.com 浦下.com (ウラシタドットコム) […]