Craft your forge, Build your project, Grow your community freely
1<!--
2SPDX-FileCopyrightText: 2026 Romain Maneschi <romain@gitroot.dev>
3 4SPDX-License-Identifier: CC-BY-SA-4.0
5--> 6 7# Root Repository
8 9The first time you run GitRoot, it will create a `root repository`. This repository, called `root` by default, is where forge configuration live.
1011This is a repository like any other, you can add files with git. In a `mono-repo` instance like [gitroot.dev](https://gitroot.dev), you can manage the instance from this single repo.
1213However, it contains more internal files than standard repositories.
1415Another slight difference is how you can access the repositories. The root repository is accessible through `ssh://yourdomain.tld/` or `ssh://yourdomain.tld/root/`. A non-root repository is accessible only via `ssh://yourdomain.tld/repo1/`. The same rules apply for web access.
1617## ForgeConfig.yml
1819This file is where your main config live:
2021```yml
22################################################################################23# /!\ A restart of GitRoot is need before change in this file take effect. /!\ #24################################################################################2526sshaddr: 0.0.0.0:4545# The ssh address to listen to with ip:port form27httpaddr: 0.0.0.0:4546# The http address to listen to with ip:port form28domainname: localhost
29externalsshaddr: ssh://localhost:4545/
30externalhttpaddr: http://localhost:4546/
31rootcommitername: GitRoot
32rootrepositoryname: root
33defaultbranch: main
34nbworkerinbackground: 335execconf:
36baremetal:
37enabled: false38bwrap:
39enabled: true40user: nobody
41uid: 6553442group: nogroup
43gid: 6553444robind: []
45bind: []
46container:
47enabled: false48bin: podman
49ssh:
50enabled: false51hosts:
52 - user: myUSer
53address: 127.0.0.154port: 2255publickey: ssh-ed25519 AAAAC3NzaC1...
56```5758## Repositories.yml
5960This file contains all repositories of your forge. With the root repository itself.
6162```yml
63root:
64kind: normal
65defaultbranch: main
66owners: []
67forkurl: ""68```6970More about this file in [repositories file documentation](./repositories_file.md).