{"id":27805,"library":"ghcloneall","title":"ghcloneall","description":"Clone or update all repositories for a GitHub user or organization. Current version: 1.12.0. Release cadence: infrequent, stable.","status":"active","version":"1.12.0","language":"python","source_language":"en","source_url":"https://github.com/mgedmin/ghcloneall","tags":["git","github","clone","repositories","batch"],"install":[{"cmd":"pip install ghcloneall","lang":"bash","label":"PyPI"}],"dependencies":[],"imports":[],"quickstart":{"code":"import ghcloneall\n\n# Clone all repos for user 'octocat', skipping existing ones\nghcloneall.clone_user('octocat', skip_existing=True)\n\n# Update all repos (pull) for an organization\ntoken = os.environ.get('GITHUB_TOKEN', '')\nghcloneall.update_organization('my-org', skip_existing=True, github_token=token)","lang":"python","description":"Clone or update all repositories for a GitHub user or organization."},"warnings":[{"fix":"Set the GITHUB_TOKEN environment variable or pass it as a parameter to functions that accept it.","message":"Without a GITHUB_TOKEN, unauthenticated requests are heavily rate-limited. For large orgs or many repos, provide a token via environment variable or parameter.","severity":"gotcha","affected_versions":"all"},{"fix":"Always pass `skip_existing=True` unless you want to overwrite existing repos.","message":"The `skip_existing` parameter defaults to False. If you run `clone_user` without it, existing directories will cause an error.","severity":"gotcha","affected_versions":"all"},{"fix":"Verify the GitHub username/organization exists and that your token (if used) has the correct permissions.","message":"The library uses the GitHub API; a '404' may occur if the user/org doesn't exist or you lack access. The error message may not be clear.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-05-09T00:00:00.000Z","next_check":"2026-08-07T00:00:00.000Z","problems":[{"fix":"Run `pip install ghcloneall`.","cause":"The library is not installed.","error":"ModuleNotFoundError: No module named 'ghcloneall'"},{"fix":"Install Git from https://git-scm.com/ and ensure it is available in your system PATH.","cause":"Git is not installed or not in PATH, or the repository URL is invalid.","error":"Git command failed: git clone ..."},{"fix":"Provide a valid GitHub token via the `github_token` parameter or GITHUB_TOKEN environment variable.","cause":"Missing or invalid GitHub token, or API version mismatch.","error":"406 Client Error: Not Acceptable for url: https://api.github.com/..."}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}