CLI Client
SCM Manager provides a CLI client to directly access e.g. repositories, users and group of the SCM server inside your terminal.
Installation / Setup
The CLI Client is available for different operating systems and architectures on the official website for download. Choose the appropriate installation for you and follow the installation instructions.
Log in
In order to use the CLI client, it must be connected to the SCM server beforehand.
To do this, run the command scm login 'https://{server-url:port}/scm'
. Replace your server url and port (if necessary).
API key
When you log in, an API key is generated on the server, which will be used for all further accesses. This API key has all rights that the logged in user has on the server. If the CLI client is no longer to be used with the server, it is sufficient to remove the API key on the server side.
Attention: If API keys have been disabled on the server, the CLI client will not be able to connect.
Local configuration
When the API key is created on the server, the same key is simultaneously stored in encrypted form on the executing system.
Usage
The commands of the CLI client are always defined by the server. Only login
and logout
are always known in the CLI client.
With scm --help
the existing commands can be displayed on the top level.
Otherwise the CLI client largely documents itself. For this purpose, the --help
option can be appended at any point.
Structure
Many commands are nested, with the top level representing the resource, e.g. repo
, user
or group
.
The actions such as create
, get
or list
then follow below.
Besides the command structure the CLI client distinguishes between parameters
as mandatory arguments and options
as optional arguments.
Autocompletion
The CLI currently supports autocompletion for bash and zsh.
To enable this use source <(scm generate-completion)
in your terminal.
Also you can add it to your .zshrc
or .bashrc
.
Language
The CLI client is available in german and english. The language setting of the underlying operating system decides which language is used for the output. The fallback language is english.
Logout
If the CLI client is to be logged out of the server, the command scm logout
is sufficient.
This will delete the API key on the server and locally.
After logging out, scm login 'https://{server-url:port}/scm'
can be used to log in again.
This process can be used for example to change the CLI client to another user (with different rights).