1
1
mirror of https://github.com/go-gitea/gitea.git synced 2024-11-19 05:04:39 +01:00
gitea/models/fixtures
Lunny Xiao 6e19484f4d
Sync branches into databases (#22743)
Related #14180
Related #25233 
Related #22639
Close #19786
Related #12763 

This PR will change all the branches retrieve method from reading git
data to read database to reduce git read operations.

- [x] Sync git branches information into database when push git data
- [x] Create a new table `Branch`, merge some columns of `DeletedBranch`
into `Branch` table and drop the table `DeletedBranch`.
- [x] Read `Branch` table when visit `code` -> `branch` page
- [x] Read `Branch` table when list branch names in `code` page dropdown
- [x] Read `Branch` table when list git ref compare page
- [x] Provide a button in admin page to manually sync all branches.
- [x] Sync branches if repository is not empty but database branches are
empty when visiting pages with branches list
- [x] Use `commit_time desc` as the default FindBranch order by to keep
consistent as before and deleted branches will be always at the end.

---------

Co-authored-by: Jason Song <i@wolfogre.com>
2023-06-29 10:03:20 +00:00
..
access_token.yml
access.yml
action_run_job.yml
action_run.yml
action_task.yml
action.yml
attachment.yml
branch.yml Sync branches into databases (#22743) 2023-06-29 10:03:20 +00:00
collaboration.yml
comment.yml
commit_status_index.yml
commit_status.yml
deploy_key.yml
email_address.yml
external_login_user.yml
follow.yml
gpg_key_import.yml
gpg_key.yml
hook_task.yml
issue_assignees.yml
issue_index.yml
issue_label.yml
issue_user.yml
issue_watch.yml
issue.yml
label.yml
lfs_meta_object.yml
login_source.yml
milestone.yml
notice.yml
notification.yml
oauth2_application.yml
oauth2_authorization_code.yml
oauth2_grant.yml
org_user.yml
project_board.yml
project_issue.yml
project.yml
protected_branch.yml
public_key.yml
pull_request.yml
reaction.yml
release.yml
renamed_branch.yml
repo_archiver.yml
repo_indexer_status.yml
repo_redirect.yml
repo_topic.yml
repo_transfer.yml
repo_unit.yml
repository.yml
review.yml
star.yml
stopwatch.yml
system_setting.yml
team_repo.yml
team_unit.yml
team_user.yml
team.yml
topic.yml
tracked_time.yml
two_factor.yml
user_open_id.yml
user_redirect.yml
user.yml
watch.yml
webauthn_credential.yml
webhook.yml