先日、以下のように自社GitLabアカウントのgitリポジトリをクローンしようとしました。
git clone https://gitlab.com/xxxx/xxxx.git
ユーザー名とパスワードを訊かれるので、入力したのですが、下記のエラーが表示されクローンできません。
fatal: Authentication failed for 'https://gitlab.com/xxxx/xxxx.git/'
パスワードは確かに合っているはずなので、戸惑いましたが、調べていく間にリポジトリへのアクセス方法が少し前に変わったことを思い出しました。アクセストークンを発行して、そのアクセストークンをパスワード代わりに利用するという方法です。今回は、自分への備忘録も兼ねて、アクセストークンの発行手順をまとめたいとおもいます。
アクセストークンの発行
まず、以下の手順でアクセストークンを発行し、取得します。発行したアクセストークンは誰にも知られないように注意してください。
- 該当リポジトリにアクセスできるGitLabアカウントにログインします。
- 画面右上のプロフィールアイコンをクリックすると表示されるメニューから「Preferences」を選択します。
- 画面左側のサイトメニューから「アクセストークン」を選択します。
- 「Token name」の項目に任意のトークン名を入力します。
- 「有効期限」を入力します。(未入力の場合、有効期限は無期限になります)
- 「Select scopes」の項目で、該当トークンに付与する権限を選びます。
- 「Create personal access token」ボタンをクリックします。
- 一度しか表示されないアクセストークンを安全な場所に保存します。
アクセストークンを使う
上記で発行されたアクセストークンは、git clone ...
コマンド実行時に、GitLabアカウントのログインパスワードの代わりに使います。ユーザー名を入力した後に、パスワードを訊かれたら、このアクセストークンを入力するだけです。
パスワードを入力すべきところに、アクセストークンを入力するというところが、直感的ではないように思いますが、この方法に切り替えたという事実を忘れなければ、今後は不必要に戸惑うことはないと思います。