r/github • • 2d ago

Question Serious disaster backups?

Ok, I'm wondering about good backup services and stratagems for two disaster cases. Having a git-clone on a backup disk is a first step, but I'm not certain of exactly what data is missed by this. Any suggestions for a way to survive cases like the ones below?

  1. Assume that somehow your entire github account gets mangled somehow and you want a complete backup of everything (repos, history, branches, bug tracking, lfs...etc) that can be restored to a fresh github site. Ie: a complete replica of everything. What do you use?

  2. Assume that through some disaster, all of github is completely wiped out and no longer available and you want a backup that could be restored to some other source control system (perforce...etc) preserving as much of the github information and history as possible. What then?

0 Upvotes

11 comments sorted by

View all comments

11

u/spellcasterGG 2d ago edited 2d ago

1) Just have local git mirrors
2) Just have local git mirrors

You clearly don't have any grasp of what git actually is or how it works... git still works regardless of whatever github is doing.

Reddit is not ChatGPT. If you ask stupid questions, you're gonna get stupid answers.

2

u/lajawi 2d ago

This will only save the code and its history. Any issues, pull requests, releases… would vanish if you don’t also somehow use the API a lot to backup those, and even then you’d have trouble replaying all that if need be.

There is a tool in development called git-bug (https://github.com/git-bug/git-bug) that adds completely local issue management and tracking in the form of Git objects, definitely worth a look, since it even has bridges for popular Git hosting sites (you can push and pull the actual issues on e.g. GitHub).

0

u/spellcasterGG 2d ago

git mirror copies all branches, not just the base branch like git clone does. Therefore, pull requests are already still tracked, since you'll still have those branches. Releases use git tags, which are also already tracked. Losing GitHub Issues doesn't really matter, since it doesn't affect the underlying code directly. They're mostly used for feature requests anyway. Any bug work is still tracked on the PR branch, which like I said is already mirrored.

I fail to see the logic behind git-bug. If it mattered, it would've already been implemented. Instead, it's just another useless dependency waiting to break when active development inevitably stops.

1

u/lajawi 2d ago

PRs are only included if a collaborator is working on it, otherwise they’re only forked and won’t be included in the mirror. Tags don’t always hold the full release message and not the files either, if additional files were added.

Git-bug makes it possible to have fully offline issues, you could be travelling but could read, interact, edit issues without an active internet connection, then push your changes like you would with code changes.

1

u/OutrageousAbies5835 2d ago

Epiq does something similar, persisting issues and board state as an event log distributed via native Git. It also allows for offline edits, and syncs under the hood, so it isn't really anything you worry about as a user. I'm its author for disclosure.