Files
picpeak/docs/migration-to-org.md
T
Paul Nothaft d606fcd5a4 docs: branch model + migration-to-org guide + PR-template target hint
Operator + contributor docs for the post-org-move world. None of these
files reference the legacy branch names (`beta` / old `main` meaning) —
they describe the new shape (`main` = active dev, `stable` = curated
release channel), so they're correct from the moment the rename happens.

Three additions/edits:

1. `docs/migration-to-org.md` (new) — operator-facing one-pager that the
   in-app migration banner + the OLD GHCR package URLs (now 404) can
   point at. Walks through the single `docker-compose.yml` edit needed.

2. `CONTRIBUTING.md` — new "Branch model" section explaining which
   branch to target (`main` for features + most fixes; `stable` only
   for small, surgical bugfix backports). Updates the "fork from beta"
   step to "fork from main". Updates the release-process paragraph to
   describe the two-channel model instead of the old beta→main promote.

3. `.github/PULL_REQUEST_TEMPLATE.md` — adds a target-branch hint at
   the top of the template (HTML comment so it shows during PR
   composition but doesn't render in the merged PR body).
2026-06-29 22:05:56 +02:00

91 lines
2.9 KiB
Markdown

# Migration: PicPeak moved to its own GitHub organization
PicPeak's repository moved from the maintainer's personal handle to a dedicated
GitHub organization. This is a one-time, operator-facing change. The software
itself is unchanged; only the URLs you pull images from have moved.
## TL;DR — what changed and what you need to do
| | Before | After |
|---|---|---|
| **Repository URL** | `github.com/the-luap/picpeak` | `github.com/PicPeak/picpeak` |
| **Docker images** | `ghcr.io/the-luap/picpeak/{backend,frontend}` | `ghcr.io/picpeak/picpeak/{backend,frontend}` |
| **Branches (active dev)** | `beta` | `main` |
| **Branches (stable channel)** | `main` | `stable` |
**Action required**: update your `docker-compose.yml` to pull from
`ghcr.io/picpeak/picpeak/{backend,frontend}`. The old path no longer serves
images.
## Why this changed
The repo lived under a personal GitHub handle since the project began. Moving to
an organization is a one-time housekeeping step that:
- Separates the project's identity from any individual maintainer's account.
- Lets the project add additional maintainers later without re-transferring.
- Matches the convention every other open-source project uses for branch names
(`main` = active development, `stable` = curated production channel).
## docker-compose.yml — exact edit
Find these two lines:
```yaml
image: ghcr.io/the-luap/picpeak/backend:${PICPEAK_CHANNEL:-stable}
# ...
image: ghcr.io/the-luap/picpeak/frontend:${PICPEAK_CHANNEL:-stable}
```
Replace with:
```yaml
image: ghcr.io/picpeak/picpeak/backend:${PICPEAK_CHANNEL:-stable}
# ...
image: ghcr.io/picpeak/picpeak/frontend:${PICPEAK_CHANNEL:-stable}
```
Then:
```bash
docker compose pull
docker compose up -d
```
That's it. No data migration, no config changes, no database changes.
## What auto-redirects (you don't have to change)
GitHub redirects the old repo URL indefinitely, so these all keep working:
- Browser links to `github.com/the-luap/picpeak/...` (issues, PRs, files)
- `git clone https://github.com/the-luap/picpeak.git`
- GitHub API calls to `api.github.com/repos/the-luap/picpeak/...`
Worth updating to the canonical `PicPeak/picpeak` form when convenient, but
nothing breaks if you don't.
## What does NOT auto-redirect
- **GHCR image paths.** `ghcr.io/the-luap/picpeak/*` returns **404** — you must
update your compose file.
## Branch rename
The active-development branch was renamed from `beta``main`, and the previous
`main` (stable channel) was renamed to `stable`. This matches the convention
every other open-source project uses.
If you're a contributor:
- **Feature PRs**: target `main`.
- **Bugfix PRs**: target `main`. If the fix also needs to ship to current stable
users, open a separate small PR against `stable`.
If you're an operator: ignore. Branch names don't affect pulls.
## Got stuck?
Open an issue at https://github.com/PicPeak/picpeak/issues with the error
message and we'll help.