this post was submitted on 23 Mar 2024
28 points (91.2% liked)

Linux

48208 readers
719 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

cross-posted from: https://leminal.space/post/4761745

Shortly before the recent removal of Yuzu and Citra from Github, attempts were made to back up and archive both Github repos; it's my understanding that these backups, forks, etc. are fairly incomplete, either lacking full Git history or lacking Pull Requests, issues, discussions, etc.

I'm wondering if folks here have information on how to perform thorough backups of public, hosted git repos (e.g. Github, Gitlab, Codeberg, etc.). I'd also like to automate this process if I can.

git clone --mirror is something I've looked into for a baseline, with backup-github-repo looking like a decent place to start for what isn't covered by git clone.

The issues I can foresee:

  • Each platform builds its own tooling atop Git, like Issues and Pull Requests from Github
  • Automating this process might be tricky
  • Not having direct access/contributor permissions for the Git repos might complicate things, not sure

I'd appreciate any help you could provide.

top 11 comments
sorted by: hot top controversial new old
[–] [email protected] 1 points 7 months ago* (last edited 7 months ago)

I know its been a while but I think I found a really good tool. https://forgejo.org/ I have a couple mirrors set up now. It even pulls in binaries and releases! Its pretty well made too, a fork of gitea.

[–] [email protected] 9 points 7 months ago

There is an actively maintained project for github: https://github.com/josegonzalez/python-github-backup

[–] [email protected] 3 points 7 months ago* (last edited 7 months ago) (2 children)

It's still WIP,
but ForgeFed, an addon for ActivityPub,
will do exactly that
once it will be in a releasable state +
integrated into Forgejo
https://codeberg.org/ForgeFed/ForgeFed

FYI, Suyu (the active fork of Yuzu)
already moved to Forgejo:
https://git.suyu.dev/explore/repos

[–] [email protected] 5 points 7 months ago (1 children)

why would you make a new line in the middle of a sentence?

[–] [email protected] -1 points 7 months ago (4 children)

To improve readability on mobile

[–] [email protected] 5 points 7 months ago

That was on purpose? I'm on mobile - it looks like bad copy/paste formatting or something.

Mobile clients word wrap just fine.

[–] [email protected] 2 points 7 months ago

Thanks it looks good on Jerboa

[–] [email protected] 3 points 7 months ago

Unfortunately, it's not easy to read on my phone either.

[–] [email protected] 13 points 7 months ago

Why though? Mobiles can word-wrap just fine, you don't need to manually do it.

[–] [email protected] 1 points 7 months ago

so this is future hopeful functionality for ForgeFed?

[–] [email protected] 4 points 7 months ago

Gitlab has really good automated tools for the initial pull from GH to GL. I remember coming across some GitHub actions and ci/cd tools that auto push changes from one fork to another. The biggest issue is the bundled binaries. I dont remember seeing any automated tools for that.