I've been experimenting with git servers for a while now. Publicly I've been using gitea because it's simple and lightweight. In the lab I've been using gitlab to try out the CI and issue trackers. I had trouble with this split set up, it was difficult to keep gitea in sync with gitlab, at least the parts that I wanted to make public. And I wasn't sure I would want to keep either of them around long term.
Then I found gitlab has a repository mirroring feature. So I started tinkering with it and initially it just didn't want to work. I had created a user in gitea to perform the sync, and i added it to a team with write access to the project. Apparently I had to explicit add the repo to the team as well as adding the team to the project. Once I did that mirroring from gitlab worked perfectly. And with that one of the final pain points in the lab has been resolved. Now I can develop in my local gitlab repos and when I'm ready I can merge the new stuff into master and have it automatically push to https://git.bradlab.tech.