forgejo-federation/routers/web
Lunny Xiao f9cfd6ce5b
Use the type RefName for all the needed places and fix pull mirror sync bugs (#24634)
This PR replaces all string refName as a type `git.RefName` to make the
code more maintainable.

Fix #15367
Replaces #23070 
It also fixed a bug that tags are not sync because `git remote --prune
origin` will not remove local tags if remote removed.

We in fact should use `git fetch --prune --tags origin` but not `git
remote update origin` to do the sync.

Some answer from ChatGPT as ref.

> If the git fetch --prune --tags command is not working as expected,
there could be a few reasons why. Here are a few things to check:
> 
>Make sure that you have the latest version of Git installed on your
system. You can check the version by running git --version in your
terminal. If you have an outdated version, try updating Git and see if
that resolves the issue.
> 
>Check that your Git repository is properly configured to track the
remote repository's tags. You can check this by running git config
--get-all remote.origin.fetch and verifying that it includes
+refs/tags/*:refs/tags/*. If it does not, you can add it by running git
config --add remote.origin.fetch "+refs/tags/*:refs/tags/*".
> 
>Verify that the tags you are trying to prune actually exist on the
remote repository. You can do this by running git ls-remote --tags
origin to list all the tags on the remote repository.
> 
>Check if any local tags have been created that match the names of tags
on the remote repository. If so, these local tags may be preventing the
git fetch --prune --tags command from working properly. You can delete
local tags using the git tag -d command.

---------

Co-authored-by: delvh <dev.lh@web.de>
2023-05-26 01:04:48 +00:00
..
admin Rewrite logger system (#24726) 2023-05-21 22:35:11 +00:00
auth Split "modules/context.go" to separate files (#24569) 2023-05-08 17:36:54 +08:00
devtest Remove untranslatable on_date key (#24106) 2023-04-15 13:01:54 +02:00
events Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
explore Sort users and orgs on explore by recency by default (#24279) 2023-05-06 22:04:55 +08:00
feed Pass 'not' to commit count (#24473) 2023-05-08 07:10:53 +00:00
healthcheck Refactor setting.Database.UseXXX to methods (#23354) 2023-03-07 18:51:06 +08:00
misc Decouple the different contexts from each other (#24786) 2023-05-21 09:50:53 +08:00
org Refactor rename user and rename organization (#24052) 2023-05-21 23:13:47 +08:00
repo Use the type RefName for all the needed places and fix pull mirror sync bugs (#24634) 2023-05-26 01:04:48 +00:00
shared Respect original content when creating secrets (#24745) 2023-05-16 14:49:40 +08:00
user Refactor rename user and rename organization (#24052) 2023-05-21 23:13:47 +08:00
auth.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
auth_windows.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
base.go Use standard HTTP library to serve files (#24693) 2023-05-13 16:04:57 +02:00
goget.go Support SSH for go get (#24664) 2023-05-12 09:44:37 +00:00
home.go Refactor cookie (#24107) 2023-04-13 15:45:33 -04:00
metrics.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
nodeinfo.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
swagger_json.go Group template helper functions, remove Printf, improve template error messages (#23982) 2023-04-08 21:15:22 +08:00
web.go Add the ability to pin Issues (#24406) 2023-05-25 15:17:19 +02:00
webfinger.go Use User.ID instead of User.Name in ActivityPub API for Person IRI (#23823) 2023-04-04 10:08:23 +08:00