Creating Your First Repository¶
Once fossilrepo is running, you can create your first Fossil repository.
Via the Dashboard¶
- Log in at
http://localhost:8000 - Navigate to Repositories in the sidebar
- Click Create Repository
- Enter a name (e.g.,
my-project) - Click Create
The repository is immediately available at my-project.your-domain.com (production) or through the local Fossil server (development).
Via the CLI¶
# Inside the fossilrepo container
docker compose exec django python manage.py fossil_create my-project
This runs fossil init, registers the repo in the database, and (in production) Caddy automatically routes the subdomain.
What Happens Under the Hood¶
sequenceDiagram
participant User
participant Django
participant Fossil
participant Litestream
participant S3
User->>Django: Create repo "my-project"
Django->>Fossil: fossil init /data/repos/my-project.fossil
Fossil-->>Django: Repository created
Django->>Django: Register in database
Litestream->>S3: Begin replicating my-project.fossil
Django-->>User: Repository ready
Accessing Your Repository¶
Web UI¶
Fossil includes a built-in web interface with:
- Timeline -- commit history with diffs
- Tickets -- issue tracker
- Wiki -- project documentation
- Forum -- discussions
Clone via Fossil¶
Clone via Git (Mirror)¶
If you've configured the sync bridge:
Read-only mirror
Git mirrors are downstream copies. Push changes to the Fossil repo -- they'll sync to Git automatically.
Next Steps¶
- Configure the sync bridge to mirror to GitHub/GitLab
- Set up backups with Litestream
- Explore the architecture overview