{"id":21722308,"url":"https://github.com/ecoapm/githublabelsync","last_synced_at":"2025-04-12T21:42:31.113Z","repository":{"id":40387707,"uuid":"416833526","full_name":"ecoAPM/GitHubLabelSync","owner":"ecoAPM","description":"Synchronize GitHub issue labels across repositories","archived":false,"fork":false,"pushed_at":"2025-04-09T13:11:29.000Z","size":104,"stargazers_count":2,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-12T21:42:28.577Z","etag":null,"topics":["github","hacktoberfest","issues","labels","octokit","octokit-net","spectre-console","sync"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ecoAPM.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-10-13T17:15:04.000Z","updated_at":"2025-04-09T13:11:33.000Z","dependencies_parsed_at":"2023-11-09T12:58:32.935Z","dependency_job_id":"146bfc6d-fc1a-45d7-978f-308d31c87e8d","html_url":"https://github.com/ecoAPM/GitHubLabelSync","commit_stats":{"total_commits":60,"total_committers":4,"mean_commits":15.0,"dds":0.3833333333333333,"last_synced_commit":"5ed662b1d4705c37b1702d515d521ab9e007c094"},"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ecoAPM%2FGitHubLabelSync","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ecoAPM%2FGitHubLabelSync/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ecoAPM%2FGitHubLabelSync/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ecoAPM%2FGitHubLabelSync/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ecoAPM","download_url":"https://codeload.github.com/ecoAPM/GitHubLabelSync/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248637833,"owners_count":21137538,"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":["github","hacktoberfest","issues","labels","octokit","octokit-net","spectre-console","sync"],"created_at":"2024-11-26T02:23:24.160Z","updated_at":"2025-04-12T21:42:31.094Z","avatar_url":"https://github.com/ecoAPM.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# GitHub Label Sync\n\nSynchronize GitHub issue labels across repositories\n\n[![NuGet version](https://img.shields.io/nuget/v/GitHubLabelSync?logo=nuget\u0026label=Install)](https://nuget.org/packages/GitHubLabelSync)\n[![CI](https://github.com/ecoAPM/GitHubLabelSync/actions/workflows/CI.yml/badge.svg)](https://github.com/ecoAPM/GitHubLabelSync/actions/workflows/CI.yml)\n[![Coverage](https://sonarcloud.io/api/project_badges/measure?project=ecoAPM_GitHubLabelSync\u0026metric=coverage)](https://sonarcloud.io/dashboard?id=ecoAPM_GitHubLabelSync)\n\n[![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=ecoAPM_GitHubLabelSync\u0026metric=sqale_rating)](https://sonarcloud.io/dashboard?id=ecoAPM_GitHubLabelSync)\n[![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=ecoAPM_GitHubLabelSync\u0026metric=reliability_rating)](https://sonarcloud.io/dashboard?id=ecoAPM_GitHubLabelSync)\n[![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=ecoAPM_GitHubLabelSync\u0026metric=security_rating)](https://sonarcloud.io/dashboard?id=ecoAPM_GitHubLabelSync)\n\n## Requirements\n\n- .NET SDK\n\n## Installation\n\n```bash\n~$ dotnet tool install -g GitHubLabelSync\n```\n\n## Setup\n\n- Generate a Personal Access Token in GitHub from https://github.com/settings/tokens/new with the following access:\n  - `repo`\n  - `delete_repo`\n- keep this key/token in a safe and private place, as you'll need it to sync your labels\n\n### Wait, why do I need to give `delete_repo` rights? That sounds scary!\n\nGood question!\n\nThe GitHub API does not provide direct access to default labels, and so they are obtained by creating (and immediately deleting) a temporary private repository.\n\nYou can see the code that performs these actions [here](https://github.com/ecoAPM/GitHubLabelSync/blob/1.0.0/src/Synchronizer.cs#L75-L83).\n\n## Usage\n\n```bash\n~$ sync-labels \u003corg/username\u003e [options]\n```\n\nThis tool is designed for GitHub organization administrators, as organizations have the ability to set the default labels for new repositories.\n\nIndividual users are limited to GitHub's default set of issue labels, but this tool can still be used to ensure all of your repositories have the latest set.\n\n### Options\n\n- `-k` or `--api-key`: (*required*) GitHub API Key (Personal Access Token)\n- `-f` or `--filter`: only sync repositories that match the provided regular expression\n- `-a` or `--no-add`: do not add new labels\n- `-e` or `--no-edit`: do not edit existing labels\n- `-d` or `--no-delete`: do not delete stale labels\n- `-r` or `--dry-run`: do not perform any actions (equivalent to `-a -e -d`)\n- `-h` or `--help`: view this information from the command line\n\n## Contributing\n\nPlease be sure to read and follow ecoAPM's [Contribution Guidelines](CONTRIBUTING.md) when submitting issues or pull requests.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fecoapm%2Fgithublabelsync","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fecoapm%2Fgithublabelsync","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fecoapm%2Fgithublabelsync/lists"}