[FEAT] Improving migrations #398
Labels
No Label
backport/v1.19
backport/v1.20
backport/v1.21
bug
dependency
Chi
dependency
Chroma
dependency
citation.js
dependency
devcontainers
dependency
dropzone
dependency
F3
dependency
ForgeFed
dependency
garage
dependency
Git
dependency
Gitea
dependency
gitignore
dependency
go-enry
dependency
Go-org
dependency
go-sql-driver mysql
dependency
go-webauthn
dependency
Golang
dependency
goldmark
dependency
Goth
dependency
Helm
dependency
MariaDB
dependency
Mermaid
dependency
minio-go
dependency
Monaco
dependency
PDFobject
dependency
ssh
dependency
urfave
dependency
Woodpecker CI
dependency
XORM
Discussion
duplicate
enhancement/feature
forgejo/accessibility
forgejo/actions
forgejo/api
forgejo/branding
forgejo/ci
forgejo/documentation
forgejo/federation
forgejo/furnace cleanup
forgejo/internationalization
forgejo/moderation
forgejo/privacy
forgejo/release
forgejo/scaling
forgejo/security
forgejo/ui
issue
closed
issue
do-not-exist-yet
issue
open
manual test
OS
FreeBSD
OS
Linux
OS
MacOS
OS
Windows
run-end-to-end-tests
untested
User Research - bug
User Research - communication
User Research - documentation
User Research - feature
User Research - federation
User Research - governance
User Research - release
User Research - security
User Research - testing
User Research - UI
User Research - UX
No Milestone
No Assignees
4 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: forgejo/forgejo#398
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Needs and benefits
Migrating back and forth between Forgejo instances is among the most important features the software can deliver, breaking vendor lock-in and encouraging users to spread over available instances once federation matures.
However, the migration feature is among the part where a lot of user support requests to Codeberg originate from, because the user experience is not always smooth.
Feature Description
I think, the following domains need improvement, and should be tracked in separate issues by time (feel free to update this comment).
Performance:
UX:
Other:
Just to give an idea what a single (still ongoing BTW) migration causes:
No wonder that migrating active repositories literally takes forever when you look at the number of necessary API calls.
Mentioned this elsewhere, I'm not so sure about the states of affairs w.r.t. F3. But it should be possible to package a repository with its metadata as an F3 package and teach Forgejo to import and export that. @dachary @earl-warren
Gentle ping @dachary @earl-warren, would like to know if this is a possibility, or if I have a incorrect mental model of F3.
Sorry for overlooking the question. This is certainly the goal with F3. And my main focus in the coming weeks.
I just want to add that improving migrations does not only apply to Forgejo<->Forgejo, but also to migrations from propietary platforms.
Features like resuming failed migrations, or migration step-by-step (e.g. migrate issues later than the Git data etc) would benefit a lot.
Currently, it appears like we are hitting a limit in the size of repository migration, which sustains the vendor lock in of proprietary platforms.
Another potential solution would be to start a migration with the most recent data (issues, pulls, releases etc) and fill the archive over time.
Also linking in Codeberg/Community#1323
This is what I'm working on, daily. I'll get there.