From: D. Ben Knoble Date: Sun, 13 Apr 2025 21:52:14 GMT Subject: Re: Way to "impersonate" remote or sync remotes without fetching everything? Message-ID: In-Reply-To: <669a6a0f-bcfb-4596-a0c8-73c722a6ec10@frank.fyi> On Fri, Apr 11, 2025 at 3:02 PM Klaus Frank wrote: > > On 2025-04-11 20:43:24, D. Ben Knoble wrote: > > Maybe I haven't totally understood your use-case, but what if the > > authoritative source is your local repository, and then you push to > > There is no local repository, that's kinda the source of all of this. > The sync script runs in a CI/CD. I'm kinda abusing CI/CD here to run > a kind of cron job, in a separate repository that does the sync, maybe it > is easier to just call it scheduled pipeline/action or just stateless > cron job? > > Lets make a more quick example: > > gdm is being developed here: https://gitlab.gnome.org/GNOME/gdm > so in order to make a PR I'll have to create a fork in that GitLab > instance so now we're at 2 repositories. Then I want to have my own > independent archive mirror in my own gitlab instance. Then I also > want to mirror it onto gitlab.com and github.com just for the sake of > this example. Now we're at 5 remotes. > > Now I'd like to have a script in CI/CD (that runs server side) to sync > all of them. In example the gnome.org one could probably mostly be the > autoritative source (except for the branches that contain my changes). That all makes sense, except: why need the sync (cron) job? Treat a local copy as authoritative for you and push to all your remotes. This puts you in control at the cost of not happening automatically. (You could conceivably have a local cron job that did this.) -- D. Ben Knoble