forgejo/routers/web/repo
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
..
actions Support downloading raw task logs (#24451) 2023-06-29 10:58:56 +08:00
setting
activity.go
attachment.go
blame.go
branch.go Sync branches into databases (#22743) 2023-06-29 10:03:20 +00:00
cherry_pick.go Sync branches into databases (#22743) 2023-06-29 10:03:20 +00:00
commit.go
compare.go Sync branches into databases (#22743) 2023-06-29 10:03:20 +00:00
download.go
editor.go Sync branches into databases (#22743) 2023-06-29 10:03:20 +00:00
editor_test.go
find.go
helper.go
helper_test.go
http.go
http_test.go
issue.go Sync branches into databases (#22743) 2023-06-29 10:03:20 +00:00
issue_content_history.go
issue_dependency.go
issue_label.go
issue_label_test.go
issue_lock.go Use fetch form action for lock/unlock/pin/unpin on sidebar (#25380) 2023-06-29 04:16:04 +00:00
issue_pin.go Use fetch form action for lock/unlock/pin/unpin on sidebar (#25380) 2023-06-29 04:16:04 +00:00
issue_stopwatch.go
issue_test.go
issue_timetrack.go
issue_watch.go
lfs.go
main_test.go
middlewares.go
migrate.go
milestone.go
packages.go
patch.go Sync branches into databases (#22743) 2023-06-29 10:03:20 +00:00
projects.go Improve loadprojects for issue list (#25468) 2023-06-24 15:31:28 +00:00
projects_test.go
pull.go Sync branches into databases (#22743) 2023-06-29 10:03:20 +00:00
pull_review.go
release.go
release_test.go
render.go
repo.go
search.go Refactor indexer (#25174) 2023-06-23 12:37:56 +00:00
setting.go
setting_protected_branch.go Sync branches into databases (#22743) 2023-06-29 10:03:20 +00:00
settings_test.go
tag.go
topic.go
treelist.go
view.go
view_test.go
webhook.go Fix Permission in API returned repository struct (#25388) 2023-06-22 13:08:08 +00:00
wiki.go Improve wiki sidebar and TOC (#25460) 2023-06-23 15:51:43 -04:00
wiki_test.go