Discourse GitHub

:discourse2: 概要 Discourse GitHub は、GitHubへの貢献に基づいてユーザーにバッジを付与できるようにします。また、ユーザーがGitHubのリンクバックとパーマリンクを作成できるようにします。
:open_book: インストールガイド このプラグインはDiscourseコアにバンドルされています。別途プラグインをインストールする必要はありません。

機能

GitHubバッジ

GitHubへの貢献に基づいてユーザーにバッジを付与します。

使用方法:
  1. 設定 -\u0026gt; プラグインで github badges enabled を有効にします。
  2. GitHubアクセストークンを生成し、github linkback access token の設定に貼り付けます。以下の手順を参照してください。
  3. 貢献をスキャンするGitHubリポジトリのURLを1つ以上、github badges repos サイト設定に追加します。
バッジカウントの仕組み:

バッジはすべてのリポジトリ間でコミット数をカウントし、ユーザーが複数のリポジトリに貢献した場合、すべてのコミットが合算されて1つの合計数になります。

  • コミッターバッジ:

  • ブロンズ: 1 コミット

  • シルバー: 25 コミット

  • ゴールド: 1000 コミット

  • バッジの進化:* ユーザーが追跡されているリポジトリのいずれかでより多くの貢献を積み重ねると、バッジのティアが自動的に進化します。たとえば、ユーザーがリポジトリAにコミットし、次にリポジトリBにコミットすると、両方の貢献が合算されて、ブロンズからシルバー、そしてゴールドへと進化します。

GitHubリンクバック

GitHubのプルリクエストやコミットから、それについて言及されたDiscourseの投稿へのリンクを作成します。

使用方法:
  1. 設定 -\u0026gt; プラグインで github linkback enabled を有効にします。
  2. GitHubアクセストークンを生成し、github linkback access token の設定に貼り付けます。以下の手順を参照してください。
  3. 最後に、投稿したいプロジェクトを github linkback projects サイト設定に、以下の形式で追加します:
    • username/repository で特定のリポジトリ
    • username/* で特定ユーザーのすべてのリポジトリ

GitHubパーマリンク

GitHubの非パーマリンクを パーマリンク に置き換えます。

使用方法:
  1. 設定 -\u0026gt; プラグインで github permalinks enabled を有効にします。

設定

GitHubアクセストークン

リンクバック機能を動作させ、ユーザーにバッジを付与するには、GitHubアクセストークンが必要です。トークンはここから生成できます: Sign in to GitHub · GitHub

リンクバック機能には public_repo スコープが必要で、バッジの付与にはスコープは必要ありません(スコープはすべてチェックを外したままにしておいてください)。public_repo スコープはリポジトリへの 書き込みアクセス を付与するため、リポジトリにアクセスしない一時的なGitHubアカウント を作成し、それ専用にトークンを生成することを推奨します。

チェンジログ

未完了事項

「いいね!」 30

複数のリンクのプロセスはどうなっていますか?同じコミットコメントに追加されるだけですか?それとも毎回新しいコメントが作成されますか?

「いいね!」 1

コミットとPRのバッジを簡略化できるか疑問に思っています。なぜなら、私たちは選択のパラドックスを避けようとしているからです。:slight_smile:

現在、コミットバッジを削除しましたが、もちろん、コミットバッジ(直接コミットしているため)とフォークはコアを常に維持することとは異なります。

ワイルドカードの * は GitHub の組織では機能しませんでした。結局、すべてのリポジトリを個別に指定しました。組織の場合とユーザーの場合で、これに関して問題が発生した人は他にいますか?

リンクバックコメントの言語を設定する方法

ありがとうございます。このプラグインは本当に気に入っています!バッジシステムについて混乱していましたが、別のトピックで説明を見つけることができてよかったです: Github Badges are not working. Its hard to see if I do something wrong or if the plugin is not working - #4 by simon

しかし、その返信には次のように書かれています。

プラグインは6つのバッジを作成します:

これらのバッジはどれも見当たりません。何が起こったのかわかりません。これらのバッジの作成を(再)トリガーする方法はありますか?

「いいね!」 1

自分で質問に答えますが、数時間後にスケジュールされたタスクが実行され、その時にバッジが作成されました。

これを手動で行う方法は、サイドキックジョブをトリガーすることのようです。

「いいね!」 1

Feature Request: リンクバックからカテゴリやタグを除外する

RSS プラグインが GitHub の新しいリリースを自動的に取り込む Announcements カテゴリがあります。リリースノートが issue をリンクする場合、そのリンクも Discourse に表示され、リンクバックが作成されますが、それは誰にも役立たず、GitHub 上でノイズが発生します。

特定の投稿、つまりカテゴリやタグ、あるいは RSS プラグインで設定されているユーザーからの投稿をリンクバックの作成から除外できるようにしたいと考えています。

:partying_face: このプラグインは、Bundling more popular plugins with Discourse core の一環として、Discourse コアにバンドルされるようになりました。セルフホストでこのプラグインを使用している場合は、次回のアップグレード前に app.yml から削除する必要があります。