GitLabに貢献

GitLabに貢献することに興味を持っていただきありがとうございます。 このガイドでは、誰でも簡単にGitLabに貢献する方法を詳しく説明します。

貢献の手順については、GitLabへの貢献のページをご覧ください。

貢献したいことをお探しですか? 詳しくは貢献する方法のセクションをご覧ください。

GitLabには2つのフレーバーがあります:

  • GitLab Community Edition(CE)無料オープンソース版です。
  • GitLab Enterprise Edition(EE)は商用版です。

このガイドでは、略語としてCEとEEを使用します。

あなたの貢献をレビュアーしたりマージしたりするメンバーを含む GitLab コミュニティのメンバーシップの概要を知るには、コミュニティのロールのページをご覧ください。

GitLabコアチームがどのようにオペレーションしているか知りたい方は、GitLab貢献プロセスをご覧ください。

GitLab Incのエンジニアはエンジニアリングワークフロードキュメントを参照してください。

セキュリティ脆弱性の公表

セキュリティ脆弱性の疑いがある場合は、非公開でsupport@gitlab.comにレポーターしてください。GitLab.com ウェブサイトの情報公開セクションも参照してください。

危険:セキュリティの脆弱性が疑われる場合、公開可能なイシューを作成しないでください。

行動規範

私たちは、貢献しようとするすべての人を歓迎する環境を作りたいと考えています。 オープンで歓迎される環境に対する私たちの貢献についての詳細は、行動規範のページをご覧ください。

イシューとマージリクエストのクローズポリシー

GitLabは人気のあるオープンソースプロジェクトであり、イシューやマージリクエストに対処する能力には限りがあります。 ボランティアへの配慮から、この文書に記載されているガイドラインに沿わないイシューやマージリクエストは予告なくクローズされることがあります。

私たちのボランティアに礼儀と敬意をもって接することで、あなたのイシューを解決することができます。

イシューおよびマージリクエストは英語で、あらゆる年齢層の読者にとって適切な表現が含まれている必要があります。

投稿者が、投稿されたマージリクエストに対してもはやアクティブに作業していない場合、私たちはできます:

私たちはこの決定を、その変更が製品ビジョンにとってどれほど重要であるかに基づいて行います。もしマージリクエストコーチがマージリクエストを終わらせるつもりであれば、~coach will finish ラベルを割り当てます。

チームメンバーがコミュニティの貢献者をピックアップした場合、作成者をクレジットする変更履歴を追加し、オプションでMR内のコミットの少なくとも1つに作成者を含めることができます。

人助け

できる限り他のGitLabユーザーを助けてください。 みんなが助けを求めるために使う方法は、geting helpのページにあります。

メーリングリストに登録したり、StackOverflowでGitLabの質問に答えたり、IRCチャンネルで応答してください。

貢献する方法

GitLabに貢献したい方:

GitLab とのコミュニケーション方法については、Getting Helpをご覧ください。貢献者のための Gitter チャンネルもありますが、リアルタイムなコミュニケーションよりも非同期的なコミュニケーションを重視しています。

貢献ありがとうございます!

GitLab Development Kit

GitLab Development Kit(GDK) は、コントリビューターが必要な依存関係をすべて備えたローカルの GitLab インスタンスを実行するのに役立ちます。 これは、マージリクエストを上げる前に GitLab や関連プロジェクトへの変更をテストするのに使用できます。

詳しくは、gitlab-development-kitプロジェクトをご覧ください。

貢献者の流れ

GitLabに貢献する一般的な流れは以下の通りです:

  1. GitLabのフォークを作成します。 場合によっては、GitLab Development Kitをセットアップして、フォークに対して開発者が開発できるようにします。
  2. フォークに変更を加えてください。
  3. 準備ができたら、新しいマージリクエストを作成してください。
  4. マージリクエストの説明で
    • 完全で正確な情報を提供してください。
    • 提供されたチェックリストを確認してください。
  5. マージリクエストを (可能であれば) 該当プロジェクトのコードオーナーの一人に割り当てるか、@mention、レビューの準備ができたことを説明してください。

GitLabにコードを投稿するとき、私たちは本当にマージしてもらいたいと思っています。 しかし、私たちは常に投稿を注意深くレビュアーしており、これには時間がかかります。 投稿されたコードは通常、マージされる前に2人のドメインの専門家によってレビュアーされます:

マージリクエストを提出する際には、以下の点に注意してください:

  • レビュアーがマージリクエストに目を通す際、他のレビュアーに指導を求めることがあります。
  • コードの品質がGitLabの基準を満たしていないと判断された場合、マージリクエストレビュアーはガイダンスを提供し、作成者を私たちのところに紹介します:
  • スタイルガイドに従っていても、コードの構造的な整合性が欠けていたり、レビュアーがコード全体の品質に難色を示すこともあります。 難色が示された場合、レビュアーは作成者にその旨を伝え、何らかの指導を行います。
  • GitLab では一般的に誰でもマージリクエストの承認を示すことができますが、メンテナーはマージリクエストをマージする前に特定のレビュアーからの承認を必要とすることがあります。
  • レビュー後、作成者はマージリクエストを更新するよう求められることがあります。 マージリクエストが更新され、レビュアーに再割り当てされると、レビュアーは再度コードをレビューします。 このプロセスは、その貢献を最高のものにするために、マージ前に何度でも繰り返すことができます。

時にはメンテナーがマージリクエストをクローズすることを選択することがあります。 彼らはマージされない理由といくつかの指針を完全に開示します。 メンテナーは、将来承認されマージされるようにコードを変更する方法についての議論を受け入れます。

GitLab はコミュニティへの貢献をできるだけ早くレビューするよう最善を尽くします。 特別に任命された開発者が、毎日コミュニティへの貢献をレビューしています。チームページで、あなたが書いたコードの種類を専門とするマージリクエストコーチを探し、マージリクエストに記載しましょう。 たとえば、フロントエンドのコードを書いた場合は、@mention フロントエンドのマージリクエストコーチを指定します。 あなたのコードが複数の分野にまたがっている場合は、@mention 複数のマージリクエストコーチを指定することもできます。

@mention GitLabは多くのコミュニティからの貢献を受けています。 もしあなたのコードが最初の投稿から2営業日以内にレビューされなかった場合、遠慮なくすべてのマージリクエストコーチに@gitlab-org/coaches を付けて注意を喚起してください。

GitLabにコードを投稿する際、貢献者が外部ライブラリの助けを必要とすると感じるかもしれません。 あなたのコードが外部ライブラリを含む場合は、その理由とともにライブラリへのリンクを提供してください。

@mention を含むマージリクエストのメンテナーです:

  • 500以上の変更。
  • 大きな変更。
  • 外部ライブラリ。

誰について言及すべきかわからない場合は、マージリクエストの初期段階でレビュアーが代わりに言及します。

課題のワークフロー

このドキュメントでは、現在のイシューのワークフローの概要を説明します:

マージリクエストワークフロー

このドキュメントでは、現在のマージリクエストプロセスの概要を説明します。

スタイルガイド

この文書では、現在のスタイル・ガイドラインの概要を説明しています。

デザインとUI要素の実装

このデザイン・ドキュメントは、デザインとUI要素を実装するための現在のプロセスを概説しています。

ドキュメントに貢献する

ドキュメントに貢献する方法については、GitLabドキュメンテーションガイドラインをご覧ください。

エンタープライズ版ライセンスの取得

EE-featureに貢献するためにライセンスが必要な場合は、関連情報を参照してください。