2018/05/20

Submitting patch to Haiku の巻

Haiku へのパッチ送付方法が、Trac から Gerrit へ変更になっています。とりあえず作業が一通りできるようになったので、メモ。
※Haiku ビルド環境は Ubuntu 18.04 LTS です。
  1. review.haiku-os.orgへの登録
    • GitHub のアカウントを作成
    • GitHub のアカウントで、https://review.haiku-os.org に登録
    • サインイン後 profile を確認して、Email が空白であれば、Trac で報告 (例) し修正されるのを待つ (Trac のアカウントがない場合は作成)。
      ※ review.haiku-os.org へサインインすると、GitHub にもサインインしているので、サインアウト時は忘れずに GitHub もサインアウトすること。
    • ssh のキーを作成して、公開鍵の内容を登録。
  2. ソースの修正
    • ローカル master から作成した作業用ブランチで色々変更。
      ※ローカル master はいじらない。
    • git gui で、変更を commit
      ※タイトルは 50 文字以下
      ※ git gui でやれば落ち着いてできて楽。
    • git format-patch master で commit ごとのパッチを作成
    • ローカル master から submit 用ブランチを作成してチェックアウト。
    • 先に作成したパッチから、submit するパッチを 1つだけ適用。
      git am patch_name
      ※1 submit に対して、1 commit だけにすると後の修正が楽です。
      →たくさん submit したい場合は、submit 用ブランチを複数用意。
      ※パッチ適用前にパッチファイルを編集すれば、コミット内容を修正できます。
  3. Submit (初回)
    • git-review をインストール
      sudo apt install git-review
    • submit 用ブランチにチェックアウトして、git-review --dry-run でChange-Id ができます。
      ※ 一度やればOK
    • commit を git-reviewで submit
      git-review
      ※俺だけトピック付きでアップロードされちゃった!! ()
      • レビュープロセス上は問題ないようです。この件で意見はありませんでした。
      • git-review -T でトピックはつかなくなるようです。
    • アップロードを確認したら、Trac で submit した URI をつけて詳細報告 ()
  4. Submit (2回め以降)
    • パッチが採用されたら、ローカル master を更新 (git pull) 後、 作業用ブランチと submit用ブランチにそれぞれチェックアウトと rebase
      git rebase master
    • 以下繰り返し
      • ソース修正、submit 用ブランチへの適用
      • git-review -T (-T おぷしょんをおぼえた!!)
      • Tracでの報告
  5. Submitしたパッチの修正
    • submit 用ブランチにチェックアウトしてソースの修正。
    • git rebase -i HEAD~2 (Qtプロジェクトにコミットしようよを参考にしました)
      • squash で変更の統合、その後メッセージ、タイトルの修正。
        ※ Change-ID は変更しないこと!!
    • git-review -T
    • 必要に応じて、作業用ブランチの修正。
      ※更新された master と conflict を起こさないようにするため。

0 件のコメント:

コメントを投稿