GitLab Shell 機能リスト

発見

ユーザが SSH 経由でインスタンス上で自分自身を識別できるようにします。このコマンドは、ユーザーがインスタンスに SSH アクセスできるかどうかをすばやく確認するのに役立ちます:

ssh git@<hostname>

PTY allocation request failed on channel 0
Welcome to GitLab, @username!
Connection to staging.gitlab.com closed.

権限が拒否されると、このコマンドは返されます:

ssh git@<hostname>
git@<hostname>: Permission denied (publickey).

Gitオペレーション

GitLab Shellは、git-upload-pack,git-receive-pack andgit-upload-archive SSHコマンドを処理することで、SSH上でのGitオペレーションをサポートします。コマンドのセットは定義済みのGitコマンドに限定されています:

  • git archive
  • git clone
  • git pull
  • git push

新しい2FA回復コードの生成

ユーザーが新しい2FA回復コードを生成できるようにします:

$ ssh git@<hostname> 2fa_recovery_codes

Are you sure you want to generate new two-factor recovery codes?
Any existing recovery codes you saved will be invalidated. (yes/no)
yes

Your two-factor authentication recovery codes are:
...

2FA OTPの確認

ユーザーが2FA ワンタイムパスワード(OTP)を確認できるようにします:

$ ssh git@<hostname> 2fa_verify

OTP: 347419

OTP validation failed.

LFS 認証

ユーザーが LFS 認証用の認証情報を生成できるようにします:

$ ssh git@<hostname> git-lfs-authenticate <project-path> <upload/download>

{"header":{"Authorization":"Basic ..."},"href":"https://gitlab.com/user/project.git/info/lfs","expires_in":7200}

個人アクセストークン

ユーザーが SSH 経由で個人アクセストークンを使用できるようにします:

$ ssh git@<hostname> personal_access_token <name> <scope1[,scope2,...]> [ttl_days]

Token:   glpat-...
Scopes:  api
Expires: 2022-02-05