forgejo/models
Gergely Nagy d87c526d2a
Allow changing the repo Wiki branch to main
Previously, the repo wiki was hardcoded to use `master` as its branch,
this change makes it possible to use `main` (or something else, governed
by `[repository].DEFAULT_BRANCH`, a setting that already exists and
defaults to `main`).

The way it is done is that a new column is added to the `repository`
table: `wiki_branch`. The migration will make existing repositories
default to `master`, for compatibility's sake, even if they don't have a
Wiki (because it's easier to do that). Newly created repositories will
default to `[repository].DEFAULT_BRANCH` instead.

The Wiki service was updated to use the branch name stored in the
database, and fall back to the default if it is empty.

Old repositories with Wikis using the older `master` branch will have
the option to do a one-time transition to `main`, available via the
repository settings in the "Danger Zone". This option will only be
available for repositories that have the internal wiki enabled, it is
not empty, and the wiki branch is not `[repository].DEFAULT_BRANCH`.

When migrating a repository with a Wiki, Forgejo will use the same
branch name for the wiki as the source repository did. If that's not the
same as the default, the option to normalize it will be available after
the migration's done.

Additionally, the `/api/v1/{owner}/{repo}` endpoint was updated: it will
now include the wiki branch name in `GET` requests, and allow changing
the wiki branch via `PATCH`.

Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
2024-01-31 11:43:23 +01:00
..
actions Revert "Fix schedule tasks bugs (#28691)" 2024-01-28 11:05:33 +01:00
activities Simplify how git repositories are opened (#28937) 2024-01-27 21:09:51 +01:00
admin Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
asymkey [GITEA] Add noreply email address as verified for SSH signed Git commits 2024-01-28 10:54:58 +01:00
auth [GITEA] Fix session generation for database 2024-01-28 10:54:59 +01:00
avatars Refactor some legacy code and remove unused code (#28622) 2023-12-28 09:38:59 +00:00
db [TESTS] add log.Level to test.NewLogChecker 2024-01-28 11:07:43 +01:00
dbfs make writing main test easier (#27270) 2023-09-28 01:38:53 +00:00
fixtures [GITEA] Add noreply email address as verified for SSH signed Git commits 2024-01-28 10:54:58 +01:00
forgejo/semver [SEMVER] store SemVer in ForgejoSemVer after a database upgrade 2024-01-28 08:19:26 +01:00
forgejo_migrations Allow changing the repo Wiki branch to main 2024-01-31 11:43:23 +01:00
git Revert "Fix schedule tasks bugs (#28691)" 2024-01-28 11:05:33 +01:00
issues [GITEA] Avoid WHERE IN for comment migration query 2024-01-28 10:54:59 +01:00
migrations [GITEA] new doctor check: fix-push-mirrors-without-git-remote (#1853) 2024-01-28 10:54:59 +01:00
organization Remove GetByBean method because sometimes it's danger when query condition parameter is zero and also introduce new generic methods (#28220) 2023-12-07 15:27:36 +08:00
packages Fix some RPM registry flaws (#28782) 2024-01-19 11:37:10 +00:00
perm [GITEA] Optionally allow anyone to edit Wikis 2024-01-28 10:54:59 +01:00
project Fix comment permissions (#28213) 2023-11-25 17:21:21 +00:00
pull [GITEA] GetScheduledMergeByPullID may involve a system user 2024-01-28 10:54:59 +01:00
repo Allow changing the repo Wiki branch to main 2024-01-31 11:43:23 +01:00
secret Use db.Find instead of writing methods for every object (#28084) 2023-11-24 03:49:41 +00:00
shared/types Display owner of a runner as a tooltip instead of static text (#24377) 2023-05-12 08:43:27 +00:00
system Refactor deletion (#28610) 2023-12-25 21:25:29 +01:00
unit Make actions default enabled for newly created repository if global configuraion enabled (#27482) 2023-10-10 14:45:31 +00:00
unittest [GITEA] Enable mocked HTTP responses for GitLab migration test 2024-01-28 10:54:58 +01:00
user [GITEA] add option for banning dots in usernames (squash) set in test 2024-01-28 10:55:00 +01:00
webhook Refactor deletion (#28610) 2023-12-25 21:25:29 +01:00
error.go Forbid removing the last admin user (#28337) 2024-01-15 06:51:43 +00:00
fixture_generation.go Replace more db.DefaultContext (#27628) 2023-10-15 17:46:06 +02:00
fixture_test.go Replace more db.DefaultContext (#27628) 2023-10-15 17:46:06 +02:00
main_test.go make writing main test easier (#27270) 2023-09-28 01:38:53 +00:00
org.go Refactor deletion (#28610) 2023-12-25 21:25:29 +01:00
org_team.go Remove GetByBean method because sometimes it's danger when query condition parameter is zero and also introduce new generic methods (#28220) 2023-12-07 15:27:36 +08:00
org_team_test.go Reduce usage of db.DefaultContext (#27073) 2023-09-14 17:09:32 +00:00
org_test.go Replace more db.DefaultContext (#27628) 2023-10-15 17:46:06 +02:00
repo.go Refactor deletion (#28610) 2023-12-25 21:25:29 +01:00
repo_test.go Penultimate round of db.DefaultContext refactor (#27414) 2023-10-11 04:24:07 +00:00
repo_transfer.go Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
repo_transfer_test.go Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00