{"id":15436612,"url":"https://github.com/xiphe/github-sync-labels-milestones","last_synced_at":"2025-04-19T18:24:55.435Z","repository":{"id":143880131,"uuid":"42471352","full_name":"Xiphe/github-sync-labels-milestones","owner":"Xiphe","description":"Sync Labels and Milestones across Multiple repositories","archived":false,"fork":false,"pushed_at":"2022-11-08T11:10:55.000Z","size":63,"stargazers_count":46,"open_issues_count":3,"forks_count":17,"subscribers_count":50,"default_branch":"main","last_synced_at":"2025-04-06T20:16:59.147Z","etag":null,"topics":["declarative","github","issues","milestones","multi-repo","sync"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/Xiphe.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}},"created_at":"2015-09-14T19:19:38.000Z","updated_at":"2024-11-28T16:31:37.000Z","dependencies_parsed_at":"2023-07-19T02:34:08.601Z","dependency_job_id":null,"html_url":"https://github.com/Xiphe/github-sync-labels-milestones","commit_stats":null,"previous_names":["jimdo/github-sync-labels-milestones"],"tags_count":15,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xiphe%2Fgithub-sync-labels-milestones","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xiphe%2Fgithub-sync-labels-milestones/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xiphe%2Fgithub-sync-labels-milestones/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xiphe%2Fgithub-sync-labels-milestones/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Xiphe","download_url":"https://codeload.github.com/Xiphe/github-sync-labels-milestones/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249239231,"owners_count":21235820,"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":["declarative","github","issues","milestones","multi-repo","sync"],"created_at":"2024-10-01T18:51:54.198Z","updated_at":"2025-04-16T12:30:35.085Z","avatar_url":"https://github.com/Xiphe.png","language":"JavaScript","readme":"## github-sync-labels-milestones\n\nSync Labels and Milestones across Multiple repositories\n\n## Install\n\n`npm install -g github-sync-labels-milestones`\n\n## CLI usage\n\n`github-sync-labels-milestones \u003coptions\u003e`\n\n### Options\n\n- `-t, --token`  \n  [required] [github personal access token with repo access](https://github.com/settings/tokens/new)\n- `-c, --config`  \n  [required] path to config file\n- `-v, --verbose`  \n  make output more verbose\n- `-s, --silent`  \n  oppress output\n- `-V, --version`  \n  output version\n- `--baseUrl`  \n  sset github baseUrl (see [@octokit/rest](https://octokit.github.io/rest.js/v18#usage))\n- `--timeout`  \n  set github request timeout (see [@octokit/rest](https://octokit.github.io/rest.js/v18#usage))\n- `-h, --help`  \n  output help message\n- `--no-color`  \n  disable colors\n\nGet a personal access token under [settings/tokens](https://github.com/settings/tokens)\nand ensure [repo] and [public_repo] scopes are activated\n\n## Configuration File\n\nThe configuration file needs to be valid JSON or YAML and describe\nan array of configuration objects.\n\n### Example (`config.json`)\n\n```json\n[\n  {\n    \"repositories\": [\"Jimdo/github-sync-labels-milestones\", \"Xiphe/example\"],\n    \"milestones\": [\n      {\n        \"previousTitles\": [\"Complete Everything\"],\n        \"title\": \"First Release\",\n        \"state\": \"open\",\n        \"description\": \"Tasks to be completed before release\",\n        \"due_on\": \"2015-09-15T23:59:59Z\"\n      }\n    ],\n    \"labels\": [\n      {\n        \"previousNames\": [\"bug\"],\n        \"name\": \"type: bug\",\n        \"color\": \"fc2929\"\n      },\n      {\n        \"name\": \"type: feature request\",\n        \"state\": \"absent\"\n      }\n    ],\n    \"options\": {\n      \"ignoreLabels\": [\"Xiphe/example\"]\n    }\n  }\n]\n```\n\n### configuration object shape\n\n- #### `repositories`\n\n  Array of repositories on which the labels and milestones\n  should be synchronized\n\n- #### `milestones`\n\n  Array of milestones that should be synchronized\n\n- #### `labels`\n\n  _optional_ Array of labels that should be synchronized\n\n- #### `options`\n\n  _optional_ Options\n\n### milestone declaration shape\n\n- #### `title`\n\n  The title of the milestone\n\n- #### `previousTitles`\n\n  _optional_ Array of titles this milestone had before.\n  We will try to **rename** milestones found here to `title`\n  instead of creating a new one\n\n- #### `state`\n\n  _optional_ The state of the milestone. Either `open`, `closed` or `absent`.  \n  Default: `open`\n\n- #### `description`\n\n  _optional_ A description of the milestone\n\n- #### `due_on`\n\n  _optional_ The milestone due date. This is a timestamp in ISO 8601 format:  \n  `YYYY-MM-DDTHH:MM:SSZ` (The time of the day is ignored)\n\n### label declaration shape\n\n- #### `name`\n\n  The name of the label\n\n- #### `color`\n\n  _optional_ A 6 character hex code, without the leading #, identifying the color\n\n- #### `description`\n\n  _optional_ description for the label\n\n- #### `previousNames`\n\n  _optional_ Array of names this label had before.\n  The new label will be added to issues with any of these\n  and the previous labels will then be deleted.\n\n- #### `state`\n\n  _optional_ Can be `present` or `absent`.  \n  Default: `present`\n\n### Options\n\n- #### `ignoreLabels`\n\n  _optional_ Array of repositories whose labels should not be touched\n\n- #### `ignoreMilestones`\n\n  _optional_ Array of repositories whose milestones should not be touched\n\n## LICENSE\n\n\u003e The MIT License\n\u003e\n\u003e Copyright (c) 2017 - 2022 Hannes Diercks  \n\u003e Copyright (c) 2015 - 2016 Jimdo GmbH\n\u003e\n\u003e Permission is hereby granted, free of charge, to any person obtaining a copy\n\u003e of this software and associated documentation files (the \"Software\"), to deal\n\u003e in the Software without restriction, including without limitation the rights\n\u003e to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n\u003e copies of the Software, and to permit persons to whom the Software is\n\u003e furnished to do so, subject to the following conditions:\n\u003e\n\u003e The above copyright notice and this permission notice shall be included in\n\u003e all copies or substantial portions of the Software.\n\u003e\n\u003e THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n\u003e IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n\u003e FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n\u003e AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n\u003e LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n\u003e OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n\u003e THE SOFTWARE.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxiphe%2Fgithub-sync-labels-milestones","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxiphe%2Fgithub-sync-labels-milestones","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxiphe%2Fgithub-sync-labels-milestones/lists"}