import toml import pathlib import os import subprocess __here__ = pathlib.Path(__file__).parent with open("mirrors.toml", "r") as f: repositories = toml.load(f) for path in repositories.keys(): local_path = pathlib.Path("/git") / pathlib.Path(path) local_path.mkdir(exist_ok=True, parents=True) secondary_urls = repositories[path]["remotes"] os.chdir(str(local_path)) subprocess.run(["git", "remote", "update"]) subprocess.run(["git", "fetch", "origin", "'*:*'"]) for url in secondary_urls: print(url) subprocess.run(["git", "push", "-u", url, "--all"])