Githubラベルを作成/削除するCLIツールの作成



CLIツール
最近、Githubラベルに関する記事を読みました.私はあなたがそれらをチェックアウトすることをお勧めします.(残念なのは日本人だけです)

GITTUBの問題をいかに整理するか:タグ付けのためのシンプルなスタイルガイド
https://robinpowered.com/blog/best-practice-system-for-organizing-and-tagging-github-issues

健全なGithubラベル
https://medium.com/@dave_lunny/sane-github-labels-c5d2e6004b63

論理的で、カラフルで、分別があるgithubラベル
https://seantrane.com/posts/logical-colorful-github-labels-18230/

Github問題のラベルを作り直す+プロジェクトのかんばんを自動化
https://qiita.com/willow-micro/items/51eeb3efe5b4192a4abd
私はあなたがGitHubの問題を使用するとき、おそらくあなたの多くは追加/変更のラベルをする必要があると思います.実際、デフォルトのラベルはよくあります.理想的でない.通常、最初のコミットを押した後に手動で新しいラベルを追加します.つまり、問題ボードに行ってラベルを付けます.
記事を読んだ後、私は、記事が記載されたラベルを準備すると思いました↓
GitHub APIをチェックしてラベルを作成しました.幸いにも、ラベルAPIがあります.
https://docs.github.com/en/rest/reference/issues#labels
ラベルAPIの使い方はとても簡単です.私たちはちょうどいくつかのパラメータを渡す必要がありますGithub個人トークンを使用してインスタンスを作成する必要があるので、私たちは簡単にAPIを使用することができますjsライブラリ“octokit”です.

octokit / core.js
のための拡張可能なクライアント
コア.js

Extendable client for GitHub's REST & GraphQL APIs




  • Usage
  • REST API example
  • GraphQL example
  • Options
  • Defaults
  • Authentication
  • Logging
  • Hooks
  • Plugins
  • Build your own Octokit with Plugins and Defaults
  • LICENSE
  • あなたがGithubのものを利用するために最小限の図書館を必要とするならばREST API and GraphQL API 必要に応じてプラグインで拡張できます.@octokit/core 素晴らしい出発点です.
    プラグインAPIを必要としないなら @octokit/request or @octokit/graphql 直接的に良い代替手段です.
    用途
    ブラウザー
    負荷@octokit/core 直接からcdn.skypack.dev
    <スクリプトタイプ= "モジュール"
    からのインポート{ octokit }https://cdn.skypack.dev/オクトーット/コア
    スクリプト
    ノード
    インストールnpm install @octokit/coreconst { octoit }= require ("@ octoit/core ");
    //@@ octokit/coreからimport { octoit }を出力します
    REST APIの例
    //パーソナルアクセストークンを作成しますhttps://github.com/settings/tokens/new?scopes=repo
    const octokit = new octokit ({ Auth :` personal - access - token 123 ` });
    応答.
    View on GitHub
    私はnodejsとtypescriptとシンプルなアプリケーションを書いた.
    私はセットアップのための時間を節約するタイプスクリプトのスターターを使用します.TypeScriptスターターは役に立ちますが、eslintの設定が問題を検出するのを助けてくれましたが、同時にスクリプトを素早く実行するのを防ぎました.

    bitjson / typescript-starter
    すぐに作成し、新しいライブラリまたはノードを構成します.JSプロジェクト








    今すぐ開始
    つの単純なコマンドを実行して、インタラクティブなプロジェクトジェネレータをインストールして使用します.あなたが必要Node v10 またはそれ以降.
    NPXタイプスクリプトスターター
    対話型CLIは、プロジェクトを自動的に作成し、構成するのに役立ちます.

    Since this repo includes the CLI and it's tests, you'll only need to fork or clone this project if you want to contribute. If you find this project useful, please consider leaving a star so others can find it. Thanks!


    機能
  • Start Standard ,将来のJavaScript --安定したESNES機能を備えた今日--stage 3 or finished 特徴

  • Optionally use typescript ツーリング,リンギングおよびドキュメンテーション生成を改善するために
  • エクスポートとしてjavascript module , 使用することができる消費者のために完全に木を揺るがすあなたの仕事を作ることes6 imports 同様Rollup , Webpack , or Parcel )
  • あなたの下流開発経験を改善するためにタイプ宣言をエクスポートしてください
  • ノードの後方互換性.JSのスタイル
  • 厳格で柔軟なtypescript configurations
  • View on GitHub
    スクリプトのレポはこちらです.

    koji / github-label-manager
    シンプルなCLIツールを作成する/削除するラベルをgithubラベルAPI
    ラベルマネージャー
    シンプルなCLIツールを作成する/GitHubラベルAPIでラベルを削除します.

    ラベルマネージャー.mov
    ラベルAPI
    https://docs.github.com/en/rest/reference/issues#labels label data format//ラベル形式
    { }
    "id ": 3218144327
    "nodeound id ": "MDU 6 tgfizwwzmlj 4 mtq 0 mzio 3 "
    URL ", "https://api.github.com/repos/koji/frontend-tools/labels/wontfix」
    "name ": "wontfix "
    "カラー": "ffffff "
    "デフォルト": true
    "説明": "これは動作しません

    このスクリプトが行うことは以下の通りです.
  • 特定のレポに単一のラベルを作成する
  • 特定のレポに複数のラベルを作成する
  • 特定のレポから1つのラベルを削除します
  • 特定のレポからすべてのラベルを削除
  • 要件:レポについての個人的なトークン
    トークンを生成できますhere .
    何を入力する必要があります
  • 操作
    0 :キャンセル(プロセスを終了)
    1 :特定のレポに単一のラベルを作成する
    2 :特定のrepoに複数のラベルを作成する
    3:シングルを削除.
  • View on GitHub
    このNodeJSスクリプトは、最初に3つのことを要求します.GitHub個人トークン(習慣'どこでも)、githubのID、およびターゲットのrepoの名前.
    それはあなたが設定したrepoに4簡単な機能を提供します.

    ラベルを作る
    あなたは、新しいラベル名、ラベルの色を渡す必要があります.次に、あなたのrepoに新しいラベルを作成します.

    ラベルの作成
    この関数は、定数として設定される29のラベルを作成します
    定数を変更すると、簡単にラベルを更新できます.

    ラベル削除
    この関数は、レポからタグを削除します.パラメータとしてラベル名が必要です.(将来、ラベルリストを取得し、マルチラベルでラベル/ラベルを選択する必要があります).

    ラベル削除
    これはあなたのrepoからすべてのラベルを削除します.まず、すべてのラベルの名前をREPOから取得し、パラメータとして渡します.プロセスは「ラベルを削除」と同じです