以下のようなエラーが出ている人向け
error: remote origin already exists.
remote: Repository not found.
また、個人の管理下のプロジェクト(=GitHubでいうリポジトリ)ではなく、会社やチームで管理しているプロジェクトの場合はMaster権限ではなくDeveloper権限が与えられていることが多いかと思います。
なので、今回はDeveloper権限が与えられている想定でやっていきたいと思います。
改めて今回の状況を整理すると
・既存のリポジトリをGitLabで管理したい
・ユーザの権限がDeveloperなど
・GitHubは多少は使える
といったところでしょうか。
まずはNew projectより新しくプロジェクトを作成します。
Create blank projectを選択します。
適宜必要な事項を入力してください。念のために”Initialize repository with a README”にチェックを入れておいてください。
これでとりあえずREADMEだけの空のリポジトリが作成されました。
次に既存のローカルリポジトリをGitLabの管理下にしましょう。
もちろん、Githubの公開されているリポジトリをcloneしたものでも大丈夫です。
cloneしたものの場合と、新たにgitで作成したローカルリポジトリでは少しだけ設定が変わりますが、
主にログイン設定やssh設定の有無の違いとなります。
ssh設定やログイン設定が完了している前提で作業を進めていきます。(もしここができていない場合は公式の設定を参考ください)
まず、ローカル環境でcloneしたリポジトリにcdします。
$ cd [クローンしたリポジトリ]
先にsshのほうのURLを確認しておきます。
このURLが必要になります。
つぎにgit remote -v
をして、何も表示されない場合は
$ git remote add origin [sshのほうのリポジトリURL]
表示された場合は
$ git remote set-url origin [sshのほうのリポジトリURL]
をおこない、これでremoteリポジトリのセットが完了しました。
権限がMasterの場合はこのままcommmit とpush を行えばいいのですが、それ以下の権限だとエラーが出てしまいます。
ですので、ローカルで新たに
$ git checkout -b dev
を行い、devブランチを作成してあげます。
この状態でcommit & pushをすると、リモートにも新しいブランチが反映されてうまく管理ができると思います。
あとは必要に応じてプルリクエストやマージを行ってmainブランチは頻繁に変更しないようにするといいかなと思います。
ちょっと走り書きになりましたが、参考にしていただければ幸いです。
暇があればもう少しきれいにまとめなおそうと思います。
コメント