mirror of
https://gitea.com/gitea/docs.git
synced 2026-11-05 17:45:46 +00:00
Cover what users need to get going and leave the details to gt <command> --help and gt help. Signed-off-by: bircni <[email protected]>
58 lines
1.8 KiB
Markdown
58 lines
1.8 KiB
Markdown
---
|
|
sidebar_position: 3
|
|
---
|
|
|
|
# Logging in
|
|
|
|
On a terminal, `gt auth login` asks for the instance and how to log in. gt never asks for
|
|
your password.
|
|
|
|
## OAuth in a browser
|
|
|
|
```bash
|
|
gt auth login --host https://gitea.example.com --oauth
|
|
```
|
|
|
|
gt opens the instance's authorization page, so single sign-on and two-factor
|
|
authentication work as on the web. The browser has to run on the same machine as gt.
|
|
`--scopes` limits the token to fewer [scopes](/development/oauth2-provider#scopes); gt
|
|
refreshes OAuth tokens on its own.
|
|
|
|
## Access token
|
|
|
|
Create a token under **Settings > Applications** on the instance and pass it on stdin:
|
|
|
|
```bash
|
|
gt auth login --host https://gitea.example.com --with-token < token.txt
|
|
```
|
|
|
|
The token needs `read:user`, and the scopes of what you do with gt, such as
|
|
`write:repository` and `write:issue` for working on pull requests.
|
|
|
|
## SSH key
|
|
|
|
gt can sign its requests with an SSH key registered for your account instead of using a
|
|
token:
|
|
|
|
```bash
|
|
gt auth login --host https://gitea.example.com --ssh-key ~/.ssh/id_ed25519
|
|
```
|
|
|
|
## Where credentials are kept
|
|
|
|
Tokens go to the system keyring by default. `--credential-store file` keeps them in gt's
|
|
configuration directory instead, for machines without a keyring. `gt auth status` lists
|
|
your accounts and `gt auth logout` removes one.
|
|
|
|
## Git over HTTPS
|
|
|
|
`gt auth setup-git` lets `git push` and `git fetch` over HTTPS use gt's login. gt's own
|
|
clone and checkout commands need no setup.
|
|
|
|
## Several instances and accounts
|
|
|
|
Run `gt auth login` for each instance and account. gt picks the instance from the
|
|
repository's remote or `--host`, and the account with `gt auth switch` or `--user`.
|
|
For instances behind an access proxy, `--header` and `--client-cert` add headers and a
|
|
client certificate; see `gt auth login --help`.
|