This repo contains code to mirror other repos. It also contains the code that is getting mirrored.
Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
 
 
John-Mark Gurney e66e9c4f68 add a quick start... vor 2 Jahren
.gitignore ignroe some standard stuff.. vor 2 Jahren
README.md add a quick start... vor 2 Jahren
doupdate.sh grab and store the ls-remote output.. disable dry-run.. vor 2 Jahren
reponames.py first cut of this.. vor 2 Jahren
repos.txt first cut of this.. vor 2 Jahren
verify.sh add script to verify that the ls-remote files matches the branches/tags vor 2 Jahren

README.md

GITMIRROR

This repo is a mirror of various repositories that I want to keep track of. I realized that git, w/ it’s inherently dedupability, and the ability to store many trees in a single repo, that it’d be easy to create a repo that regularly clones/mirrors other source repos. Not only this, but the state of the tags and branches can be archived on a daily basis, consuming very little space.

The main reason that I want this is from a supply chain availability perspective. As a consumer of source, it isn’t always guaranteed that the project you depend upon will continue to exist in the future. It could also be that older version are removed, etc.

Quick start

  1. Update the file repos.txt with a list of urls that you want to mirror.
  2. Run the script doupdate.sh to mirror all the repos.
  3. Optionally run git push --mirror origin to store the data on the server.

Process

  1. Repo will self update main to get latest repos/code to mirror.
  2. Fetch the repos to mirror into their respective date tagged tags/branches.
  3. Push the tags/branches to the parent.
  4. Repeat