-
-
Save MoOx/93c2853fee760f42d97f to your computer and use it in GitHub Desktop.
// go on you labels pages | |
// eg https://github.com/cssnext/cssnext/labels | |
// paste this script in your console | |
// copy the output and now you can import it using https://github.com/popomore/github-labels ! | |
var labels = []; | |
[].slice.call(document.querySelectorAll(".label-link")) | |
.forEach(function(element) { | |
labels.push({ | |
name: element.textContent.trim(), | |
// using style.backgroundColor might returns "rgb(...)" | |
color: element.getAttribute("style") | |
.replace("background-color:", "") | |
.replace(/color:.*/,"") | |
.trim() | |
// github wants hex code only without # or ; | |
.replace(/^#/, "") | |
.replace(/;$/, "") | |
.trim(), | |
}) | |
}) | |
console.log(JSON.stringify(labels, null, 2)) |
@jakobe I updated my code based on your comments. At the moment, looks like a good option.
Awesome 👍
The official GitHub CLI now includes functionality that allows you to clone labels easily from one repo to another.
Example syntax:
gh label clone org-name/repo-to-clone-from --repo org-name/repo-to-clone-to
See the documentation for more information.
gh label clone org-name/repo-to-clone-from --repo org-name/repo-to-clone-to
bet
The GitHub CLI docs also illustrate listing the labels using custom JSON output templates: https://cli.github.com/manual/gh_label_list
The official GitHub CLI now includes functionality that allows you to clone labels easily from one repo to another. Example syntax:
gh label clone org-name/repo-to-clone-from --repo org-name/repo-to-clone-to
See the documentation for more information.
Thanks works well!🎉
@jamesperrin I get the following error when i try to paste the export code in the console browser
3188:30 Uncaught TypeError: Cannot read properties of null (reading 'innerText')
at <anonymous>:30:77
at Array.map (<anonymous>)
at getLabels (<anonymous>:27:27)
at <anonymous>:79:11
at <anonymous>:80:3
(anonymous) @ VM3188:30
getLabels @ VM3188:27
(anonymous) @ VM3188:79
(anonymous) @ VM3188:80
Do you have a fix for this?
@jamesperrin I get the following error when i try to paste the export code in the console browser
3188:30 Uncaught TypeError: Cannot read properties of null (reading 'innerText') at <anonymous>:30:77 at Array.map (<anonymous>) at getLabels (<anonymous>:27:27) at <anonymous>:79:11 at <anonymous>:80:3 (anonymous) @ VM3188:30 getLabels @ VM3188:27 (anonymous) @ VM3188:79 (anonymous) @ VM3188:80Do you have a fix for this?
@deffcolony I need a little more information. What is the URL for GitHub repository you tried to run the script against?
@jamesperrin I get the following error when i try to paste the export code in the console browser
3188:30 Uncaught TypeError: Cannot read properties of null (reading 'innerText') at <anonymous>:30:77 at Array.map (<anonymous>) at getLabels (<anonymous>:27:27) at <anonymous>:79:11 at <anonymous>:80:3 (anonymous) @ VM3188:30 getLabels @ VM3188:27 (anonymous) @ VM3188:79 (anonymous) @ VM3188:80Do you have a fix for this?
@deffcolony I need a little more information. What is the URL for GitHub repository you tried to run the script against?
@jamesperrin The URL is https://github.com/deffcolony/HP-Witchcraft-and-Wizardry/labels
@jamesperrin I get the following error when i try to paste the export code in the console browser
3188:30 Uncaught TypeError: Cannot read properties of null (reading 'innerText') at <anonymous>:30:77 at Array.map (<anonymous>) at getLabels (<anonymous>:27:27) at <anonymous>:79:11 at <anonymous>:80:3 (anonymous) @ VM3188:30 getLabels @ VM3188:27 (anonymous) @ VM3188:79 (anonymous) @ VM3188:80Do you have a fix for this?
@deffcolony I need a little more information. What is the URL for GitHub repository you tried to run the script against?
@jamesperrin The URL is https://github.com/deffcolony/HP-Witchcraft-and-Wizardry/labels
@deffcolony I added validations checks for all the label properties. The issue was some label may not have a description which caused the error. You should be able to run the script without issue.
tl;dr gh label clone src-org/src_repo --repo dest-org/dest_org
If you're coming by this thread in 2024 or later, I highly recommend seeing the official GitHub CLI [1].
@jakobe I updated my code based on your comments. At the moment, looks like a good option.