←back to thread

160 points MattIPv4 | 1 comments | | HN request time: 0s | source
Show context
retrocryptid ◴[] No.36407521[source]
I'm currently hosting a git repo on my home machine and it's used by me when I'm on the road and a few people I trust enough to have logins on my DMZ machine.

It seems there should be an easy way to use gitlab or github as a public read-only proxy to changes that are released on the private repo. And then going the other way, sucks up PRs from public sites and lovingly integrates them into the "real" repo on my home machine.

Yes. There are security ramifications. There are availability ramifications. I seems slightly to be trying to skirt GitLab's policies they're probably putting into effect to avoid going bankrupt. But the flip-side is I really don't need a wiki or a bug tracker or whatever else GitLab is working on. I would pay a small amount of cash to just get a public repo mirror.

And we all have different ideas about how to make this "easy". I don't mind running scripts on my local host, but would like to avoid polling the public repo to see if someone's posted a PR. I also don't want to have to run a script in a container on the public repo. So would love it if you could set the public repo to proxy PRs to a remote repo.

Just curious if anyone else has similar requirements. Maybe you have a corporate repo and want to mirror it to a public site like GitLab, GitHub or SourceHut. Maybe, like me, *you* just want a remote repo to stash your code but a public location so your home server doesn't melt down that one time someone slashdots your project.

replies(4): >>36407548 #>>36407593 #>>36407705 #>>36411120 #
eddythompson80 ◴[] No.36407705[source]
It’s not that hard to setup. It’s a built-in feature in something like gitea. Or you can write a `git push` cron task or a server hook in git to keep the 2 in sync. GitHub is full of mirror repos. You can also disable issues, discussions, wiki, and pull requests if you don’t want to deal with that.
replies(2): >>36407851 #>>36408320 #
oefrha ◴[] No.36408320[source]
> You can also disable … pull requests

That is the one thing you can’t disable on GitHub unless something changed recently. Very annoying for mirrors where development happens elsewhere.

replies(1): >>36408574 #
TillE ◴[] No.36408574[source]
Make a README.md which clearly states this at the top, and a CONTRIBUTING.md. After that, it's just not your problem if someone opens a PR.
replies(1): >>36409253 #
1. duskwuff ◴[] No.36409253{3}[source]
There are a couple of other options, although I'll agree that none of them are ideal:

1) You can set up Github Actions to automatically close pull requests: https://github.com/marketplace/actions/close-pull-request

2) You can use "interaction limits" (in repository settings, under "moderation options") to limit repository interactions to collaborators. This can only be set for 6 months at a time, though, so you'll need to reactivate it periodically.

3) You can archive the project and unarchive it temporarily when making changes, disabling all activity on the fork.