Gerrit

From The Document Foundation Wiki
Jump to: navigation, search
本ページはGlobal Wikiからの有志による翻訳ページです。未翻訳があることや内容が古い場合があります。最新化、翻訳にご協力お願いします。
日本語独自の情報についてまとめることを目的として、日本語コミュニティによって運営されているページとして 日本語コミュニティ独自ページ があります。
URLが wiki.documentfoundation.org/JA で始まっていて、カテゴリーがJAのページです。
そちらもご利用ください。

注意:このページのオリジナルは英語版 Gerrit2017-03-25T00:40:28 の版からコピーしたものです。

原文は逐次改定されるので、定期的に原文を参照して差分を更新し、ずれることがないようにお願いします。なお差分更新をかけた場合は上の日付も修正しておいてください。

このページはコードの査読ツールgerrit.libreoffice.orgと、LibreOffice中でのその使い方のエントリーページです。

Gerritのセットアップ

始める前に:トラブルシューティング・ヘルプ

以下の説明は簡単に速く行えるようになっているべきです。しかしどこかで詰まってしまったら、こちらでヘルプを受けられます:

Gerritへの初回登録

Gerritでアカウントを作成するために、gerritにアクセスし、ページの先頭右側にある“Register”リンクをクリックしてください。好きなOpenID (OpenIDを提供しているサービスのリスト)かOAuth2を選び、それを使ってログインしてください。

現在2つのOAuth2プロバイダがサポートされています(OAuth2プラグインの有効化は未定):

  • GitHub
  • Google

Gerritでのアカウントの切り替え (ほかのサービスとのひもづけ)

同一のGerritユーザアカウントで異なるOpenIDやOAuth2アカウントを使う(ひもづける)ことができます。

Gnome-dialog-warning.svg

警告:
新しい(OpenIDやOAuth2)アカウントではログインしないでください。その場合にGerritで新しいアカウントが作成されても、新しいOpenIDやOAuth2アカウントと既存のGerritアカウントがひもづけられないためです。!


新しいOpenIDやOAuth2アカウントを既存のGerritアカウントにひもづけるには

  1. 既存のアカウントでGerritにログインします
  2. User ▸ Settings ▸ Identitesに行くか、直接 https://gerrit.libreoffice.org/#/settings/web-identities に行きます
  3. "Link another identity"ボタンを押します
  4. ほかのアカウントを選択します
  5. ログインします
  6. 完了

gerritのセットアップ - 簡単版

もしすでにlibreoffice/coreをチェックアウト済みであれば、./logerrit setupを実行するだけでOKです。これによって自動的に鍵がセットアップされ、sshが適宜設定されます。もしうまくいかない場合は、以下のステップでガイドを示します:必要があれば、以下のステップに従ってください。

プログラムはhttps://gerrit.libreoffice.orgにアクセスし、Registerをクリックしてあなたのユーザ名を覚えるように指示します。さらに、プログラムはSSH公開鍵を生成・表示し、 /home/[username]/.ssh/id_rsa.pubに保存します。この鍵は'ssh-rsa'から始まるものです。ウェブサイトの登録プロセスでこの鍵を入力してください(またgerritで動くように、あとでSettingsSSH Public Keysにこの鍵を追加してください)。

./logerrit testに失敗したり、ssh -vvv logerrit~/.ssh/configが正しいパーミッションでない表示が出たら、~/.sshディレクトリの中でchmod 600 configを実行してください。


ほかの方法は、手動で細かく設定するアプローチです。その詳細は Development/gerrit/setup/ja にあります。

Gerritへのパッチの送信

貢献者リストにあなたを追加する

もし初めてLibreOfficeプロジェクトにパッチを送るのであれば、開発者と貢献者リストにあなたを追加し(そこの指示に従ってください)、あなたの貢献のライセンスを表明してください。

査読用パッチの送信

それでは、変更点(パッチ)を作成し、査読のためにgerritに送信してください(公式gerritドキュメントはこちら):

git checkout -b <a_local_branch_name_of_your_choice>
# コードを変更して、それがビルドできることを確認してください
git add file [file ...] # 新しいファイル _と_ 変更したファイルを全て
git commit
./logerrit submit master

注意:`logerrit`コマンドが動くようにするため、確実にgerritのセットアップをしてください。 ガイドはここにあります。

注意: git add + git commit ステップは'git gui'でも行うことができますが、コミットの題名行は65文字以下で、(もしあれば)コミットメッセージ行は70文字以下であることに注意してください。

注意:masterへの投稿において、現在のmasterのバージョンでの変更の(リ)ベースは有用です。これによってjenkins上でのCIビルドでccacheの恩恵を多く受けることができます。

少なくとも最後の行は特別で、この行で名前付きローカルブランチのすべてのパッチが、査読キューのmasterブランチにpushされます(リリースブランチやほかのブランチに送信したいならば適宜修正してください)。普通の貢献者はパッチのメールアドレスがgerritアカウントと同一でないとpushが許可されません。

pushに成功したら、gitはあなたのコミットが査読待ちのどこにいるのかを報告します。URLは以下のようなものになります: https://gerrit.libreoffice.org/#/c/229/.

査読中はローカルブランチを保持したままのほうが良いでしょう。それによって、パッチの新しいバージョンを簡単にpushできるようになります。 その間は以下のコードを実行することで In the mean time you can

git checkout master

masterブランチに戻ることができます - そして上記の操作(ローカルブランチの作成、コーディング、コミット、gerritへのpush)でほかのパッチを再び編集することができます。

パッチ送信の追加情報

上記の方法の代わりに、Development/GitReviewでの説明の通り、"git review"を使うこともできます。


Development/gerrit/SubmitPatch/jaに以下のような話題があります:

  • 新しいバージョンの送信
  • 下書きとしてのパッチの送信

Development/Submodulesに以下のようなサブモジュールへのパッチ送信に関する話題があります:

  • 辞書
  • helpcontent2 (for help files)
  • 翻訳

Gerritの追加情報

追加情報