{"id":13707122,"url":"https://github.com/skx/github2mr","last_synced_at":"2025-09-10T08:14:26.159Z","repository":{"id":46099642,"uuid":"234574412","full_name":"skx/github2mr","owner":"skx","description":"Export all your github repositories to a form suitable for 'myrepos' to work with.","archived":false,"fork":false,"pushed_at":"2024-12-22T09:20:17.000Z","size":29,"stargazers_count":48,"open_issues_count":0,"forks_count":9,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-17T19:17:36.015Z","etag":null,"topics":["cli","gitbucket","github","github-enterprise","golang","mr","myrepos"],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/skx.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-01-17T15:15:37.000Z","updated_at":"2025-04-04T17:55:51.000Z","dependencies_parsed_at":"2025-04-17T08:04:12.505Z","dependency_job_id":"aff848d9-74c0-48c6-8cfb-08b2194a70a8","html_url":"https://github.com/skx/github2mr","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skx%2Fgithub2mr","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skx%2Fgithub2mr/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skx%2Fgithub2mr/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skx%2Fgithub2mr/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/skx","download_url":"https://codeload.github.com/skx/github2mr/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250366687,"owners_count":21418768,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","gitbucket","github","github-enterprise","golang","mr","myrepos"],"created_at":"2024-08-02T22:01:20.479Z","updated_at":"2025-04-23T03:51:59.413Z","avatar_url":"https://github.com/skx.png","language":"Go","readme":"# Configuration / Usage\n\nOnce installed you'll need to configure your github token, which you can generate from [withing your github settings](https://github.com/settings/tokens).\n\nyou can either pass the token as an argument to the tool (via `github2mr -token=xxxxx`), or store it in the environment in the variable GITHUB_TOKEN:\n\n     $ export GITHUB_TOKEN=xxxxx\n     $ github2mr [options]\n\nYou can run `github2mr -help` to see available options, but in brief:\n\n* You can choose a default prefix to clone your repositories to.\n  * By default all repositories will be located at `~/Repos/${git_host}`.\n* You can exclude all-organizational repositories.\n  * Or the reverse, ignoring all personal-repositories.\n* You can exclude repositories by name.\n* You can default to cloning repositories via HTTP, instead of SSH.\n* By default all _archived_ repositories are excluded.\n\n\n## Other Git Hosts\n\nThis tool can be configured to point at other systems which use the same\nAPI as the public-facing Github site.\n\nTo use it against a self-hosted Github Enterprise installation, for example,\nsimply specify the URL:\n\n     $ export GITHUB_TOKEN=xxxxx\n     $ github2mr -api=https://git.example.com/ [options]\n\nIt has also been tested against an installation of [gitbucket](https://github.com/gitbucket/gitbucket) which can be configured a similar way - however in this case you'll find that you receive an error \"401 bad credentials\" unless you add the `-auth-header-token` flag:\n\n      $ export GITHUB_TOKEN=xxxxx\n      $ github2mr -api=https://git.example.com/ -auth-header-token\n\nThis seems to be related to the OAUTH header the library I'm using sends, by default it will send a HTTP request looking like this:\n\n```\nGET /api/v3/users/skx/repos HTTP/1.1\nHost: localhost:9999\nUser-Agent: go-github\nAccept: application/vnd.github.mercy-preview+json\nAuthorization: Bearer SECRET-TOKEN\nAccept-Encoding: gzip\n```\n\nNotice that the value of the `Authorization`-header begins with `Bearer`?  Gitbucket prefers to see `Authorization: token SECRET-VALUE-HERE`.\n\n\n\n\n# Github Setup\n\nThis repository is configured to run tests upon every commit, and when pull-requests are created/updated.  The testing is carried out via [.github/run-tests.sh](.github/run-tests.sh) which is used by the [github-action-tester](https://github.com/skx/github-action-tester) action.\n\nReleases are automated in a similar fashion via [.github/build](.github/build), and the [github-action-publish-binaries](https://github.com/skx/github-action-publish-binaries) action.\n\nCurrently these are reporting failures; but I'm in the process of fixing them.\n\n\n\nSteve\n--\n","funding_links":[],"categories":["Go"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskx%2Fgithub2mr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fskx%2Fgithub2mr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskx%2Fgithub2mr/lists"}