FJCTL(1) General Commands Manual FJCTL(1)

fjctl
Maintain repository settings in a Forgejo instance

fjctl [option...] [OWNER/NAME...]

fjctl is an “infrastructure as code” tool used for maintaining repositories on a Forgejo instance.

Repository settings are defined in a configuration file. fjctl reads this file, reports differences between configured and actual state, and (optionally) applies the necessary updates to make the actual state match configured.

The options are as follows:

Apply changes instead of just printing them
=FILE_PATH
Path to the configuration file
Create repositories by migrating
=man1|man5|schema
Output documentation for an item and exit
=NUMBER
Exit code for --fail-on-diff
=https://<host>[/<base>]
Forgejo host to connect to
Don't fail for un-applied differences
OWNER/NAME
Limit processing to the given repositories

=FILE_PATH
Path to the configuration file
=https://<host>[/<base>]
Forgejo host to connect to
=TOKEN
Forgejo token to use
=TOKEN, GH_TOKEN=TOKEN
Token for authentication when migrating repositories

~/.config/fjctl/config.yaml
Default configuration file path. See fjctl(5).

Exit status when differences exist between configured and actual state. Configurable by --fail-on-diff-exit-code. Can be disabled by --no-fail-on-diff.

fjctl(5)
October 14, 2025 Debian