Last active
September 6, 2024 00:47
-
-
Save Isaddo/7efebcb673a0957b9c6f07cd14826ea4 to your computer and use it in GitHub Desktop.
import github labels via console command
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
Go on your labels page (https://github.com/user/repo/labels) | |
Edit the following label array | |
or | |
Use this snippet to export github labels (https://gist.github.com/MoOx/93c2853fee760f42d97f) | |
and replace it | |
Paste this script in your console | |
Press Enter!! | |
*/ | |
[ | |
{ | |
"name": "bugfix", | |
"color": "eb6420" | |
}, | |
{ | |
"name": "feature", | |
"color": "0e8a16" | |
}, | |
{ | |
"name": "hotfix", | |
"color": "e11d21" | |
} | |
].forEach(function(label) { | |
addLabel(label) | |
}) | |
function updateLabel (label) { | |
var flag = false; | |
[].slice.call(document.querySelectorAll(".labels-list-item")) | |
.forEach(function(element) { | |
if (element.querySelector('.label-link').textContent.trim() === label.name) { | |
flag = true | |
element.querySelector('.js-edit-label').click() | |
element.querySelector('.label-edit-name').value = label.name | |
element.querySelector('.color-editor-input').value = '#' + label.color | |
element.querySelector('.new-label-actions .btn-primary').click() | |
} | |
}) | |
return flag | |
} | |
function addNewLabel (label) { | |
document.querySelector('.new-label input#label-').value = label.name | |
document.querySelector('.new-label input#edit-label-color-new').value = '#' + label.color | |
document.querySelector('.new-label-actions .btn-primary').click() | |
} | |
function addLabel (label) { | |
if (!updateLabel(label)) addNewLabel(label) | |
} |
@AHilyard I tried the importer, it works like a charm!
Thanks!!
@AHilyard Thanks !!
I have updated code in 3 files:
- export-github-labels.js
- import-github-labels.js
- delete-github-labels.js
You find them here
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I've cleaned up and updated this code and the exporter to work with Github's new classes and style variables, and added a new "remove existing" option to the label exporter script. You can find them at these gists:
Label exporter
Label importer