44 lines
1.3 KiB
Markdown
44 lines
1.3 KiB
Markdown
# Git
|
|
|
|
## Configuration for Git Clients
|
|
|
|
### Authentication
|
|
|
|
To use oauth authentication, your git configuration should have something like:
|
|
|
|
```ini
|
|
[credential]
|
|
helper = "libsecret"
|
|
helper = "cache --timeout 21600"
|
|
helper = "/usr/bin/git-credential-oauth" # See https://github.com/hickford/git-credential-oauth
|
|
```
|
|
|
|
On NixOS with HomeManager, this can be achieved by following home-manager config:
|
|
|
|
```nix
|
|
programs.git.extraConfig.credential.helper = [ "libsecret" "cache --timeout 21600" ];
|
|
programs.git-credential-oauth.enable = true;
|
|
```
|
|
|
|
## Administration
|
|
|
|
### Create Accounts
|
|
|
|
Accounts can be created by an admin in the [administrator area](https://git.qo.is/admin).
|
|
|
|
- use their full `firstname.lastname@qo.is` email so users may be connected to a LDAP database in the future
|
|
- Username should be in form of "firstnamelastname" (Forgejo doesn't support usernames with dots)
|
|
|
|
To create a new admin user from the commandline, run:
|
|
|
|
```bash
|
|
sudo -u forgejo 'nix run nixpkgs#forgejo -- admin user create --config ~custom/conf/app.ini --admin --email "xy.z@qo.is" --username firstnamelastname --password Chur7000'
|
|
```
|
|
|
|
## Backup / Restore
|
|
|
|
1. `systemctl stop forgejo.service`
|
|
2. Import Postgresql Database Backup
|
|
3. Restore `/var/lib/forgejo`
|
|
4. `systemctl start forgejo.service`
|
|
|