5 ms·
This is why I regularly back up my github repos (via git clone --bare, then compress and archive). Mind you, I do nothing that even comes close to piracy, and t
by gm 6y ago
This is why I regularly back up my github repos (via git clone --bare, then compress and archive). Mind you, I do nothing that even comes close to piracy, and the vast majority most of my repos are private, but it's a nightmare scenario to have your third party dictate when you have access to your source code and pop up surprises like this, whether by having some asshole try to extort you, or by the git repo having a data disaster with your repo.
- ayoisaiah 6y agoWhy not create a mirror to Gitlab for example?
- gm 6y agoSure. I just prefer to do it where I have 100% of control and not merely hand off from one third party to another. But whatever works. The point is to not be caught off guard when a critical provider decides to take unilateral action against you and then you're at their mercy.
- Aachen 6y agoFor someone who casually wants to do this, Gitea is a lot lighter than gitlab to self host (and in my experience a breeze to install, but gitlab is probably the same).
- Jnr 6y agoFor some repositories that probably will be terminated on Github at some point, I have set up cloning on private Gitea instance. Disabled tree overwrite on some branches and have them backed up in case something else happens. So far I have never needed to use it, but it makes me feel better. And no, Gitlab is not as easy to maintain. You can probably set it up in Docker easily, but overall it has many moving parts and it requires more resource, while Gitea is just a single Golang binary and is a joy to use.
- fhennig 6y agoIt says: "We have disabled public access to the repository." So I guess private access is still possible.
- boramalper 6y ago@gm Did you automate this somehow? If so, I would love to hear about it.
- vorpalhex 6y ago(Not parent) I've been doing a fair bit on automating git lately. I suspect this actually isn't too difficult of a project - golang has a very nice git implementation for it that is a pleasure to use. Honestly even a well written bash/zsh script would get you there as long as you have a way to feed what repos to run into them.
- gm 6y agoYou'd be surprised how simple it is (but I like simple): It's a bunch of batch files (I'm that old) that basically run the "git clone --bare" command on each repo, and then uses 7z to create a single archive of all the repos, plus text file is included that tells me how to restore the backup to another server (git push --mirror <url>). I included that because I figure when I need it I'm gonna be sort of stressed, lol. I specifically stay away from anything fancier than plain git commands because I do not want to be testing these backups all the time to make sure they're usable. Since the 7z archives are just plain files, they are backed up with all of my other stuff via my normal cloud/offline backups that I have.
- boramalper 6y agoMakes sense, thanks! :)
- xvilka 6y agoIdeally, also issues, pull requests and wiki should be preserved, including closed ones. Sadly, GitHub doesn't allow to download it as a one archive.