Issues と PR
Issues and PRs ボードは、プロジェクトの GitHub または GitLab の Issue とプルリクエスト(GitLab ではマージリクエスト)、または Linear の Issue を一覧する専用ページです。項目を選ぶと、一覧の横にプレビューが開きます。ここで別のプロジェクトを見ても、アプリのほかの部分のプロジェクトは変わりません。
ボードを開く
- サイドバーのヘッダーにあるプルリクエストアイコンをクリックします。スケジュールタスクとアーカイブの隣にあります。
- コマンドパレットで Issues and PRs を選びます。
- ⌘K に続けて B を押します(Windows と Linux では Ctrl+K に続けて B)。同じキーで閉じます。
スマートフォンでは、セッションメニュー下部のプルリクエストボタンをタップします。VS Code 拡張機能にはボードはありません。
ボードは、前回閉じたときのプロジェクト、タブ、チームで開き直します。
項目を探す
操作はツールバーの 1 行にまとまっています。左端はプロジェクトピッカーで、プロジェクトアイコンと検索があります。その隣で Issues、Pull requests、Linear を切り替えます。Issue とプルリクエストは、プロジェクト自身のホストである GitHub または GitLab から取得します。どちらのリモートもないプロジェクトでは Linear だけが表示されます。
Linear では、プロジェクトピッカーがチームピッカーに変わります。All teams か 1 つのチームを選びます。Linear のワークスペースを複数接続している場合は、同じメニューでワークスペースを切り替えます。Linear の接続方法は 統合機能 にあります。
検索では、タイトル、番号、または貼り付けたリンクを使えます。フィルターメニューは選んでいる間も開いたままなので、フィルターを組み合わせられます。
GitHub と GitLab:
- ステータス: Open、Closed、All、プルリクエストでは Merged も
- 人: Anyone、Assigned to me、Created by me、プルリクエストでは Review requested も
Linear:
- ステータス: Open、All、Backlog、To Do、In Progress、In Review、Done、Canceled、Duplicate
- 人: Anyone、Assigned to me、Created by me
- 優先度: All priorities、Urgent、High、Medium、Low、No priority
項目を読む
プレビューには説明、ラベル、コメントが表示されます。Linear の Issue では、ステータスのピルをクリックすると、チームの別のステータスに移せます。
Labels の行には鉛筆ボタンがあり、リポジトリのラベルを検索できるリストが開きます。ラベルのチェックを付けたり外したりします。変更はリストを閉じたときに保存されるので、何度クリックしても 1 回の変更になります。開いているプルリクエスト(GitLab ではマージリクエスト)には Reviewers の行もあり、同じように使えます。リストに出るのは、そのリポジトリでレビューできる人です。GitHub では、プルリクエストの作成者は候補に出ません。Linear の Issue にはどちらの行もありません。
コメントとレビュー
Issue やプルリクエストのアクティビティの下にはコメント欄があります。Comment を押すと、書いた内容を GitHub または GitLab に投稿します。⌘+Enter(Windows と Linux では Ctrl+Enter)でも同じです。テキストは投稿されるまで欄に残るので、投稿に失敗しても何も失われません。別の項目に切り替えると欄は空になります。Linear の Issue にはコメント欄はありません。
開いているプルリクエスト(GitLab ではマージリクエスト)には Approve と Request changes もあり、欄の内容はレビューと一緒に送られます。Request changes にはテキストが必要なので、何を変えてほしいかを書きます。レビューはプレビューに表示されているコミットに対するものです。その後に誰かがプッシュしていると、レビューは拒否され、プレビューが更新されるので、もう一度確認できます。GitLab では、Request changes はマージリクエストのレビュアーであるときに使えます。レビューのテキストは別のコメントとして投稿されます。そのコメントだけが失敗した場合も、レビューは有効で、テキストは欄に残ります。
作業を始める
操作ボタンはプレビューの下部にあります。
- New session は、項目をメッセージ欄に添付した状態で、プロジェクトに新しいセッションを開きます。最初のメッセージは自分で書きます。
- Issue の Start in worktree…、プルリクエストの Check out in worktree… は、項目を選んだ状態で New Worktree ダイアログを開きます。プルリクエストはその PR 自身のブランチをチェックアウトします。Worktree セッション を参照してください。
Linear の Issue では、Start in にセッションを開始するプロジェクトが表示されます。これは 統合機能 の Linear カードで Issue のチームに対応付けたプロジェクトです。チームの対応付けがなければ既定のプロジェクト、それもなければボードが最後に表示していたプロジェクトになります。その Issue だけ別のプロジェクトをそこで選ぶこともできます。
プルリクエスト
プルリクエストのプレビューには、ブランチ、サイズ(追加・削除した行数と変更ファイル数)、チェック、レビューも表示されます。Activity フィードは、コメント、レビューの判定、最新のコミットを起きた順に並べます。続けて入ったコミットはまとめて表示されるので、レビューがどのコミットに対するものかがわかります。
サイズの横には 2 つのボタンがあります。Changes はプルリクエストの差分をサイドパネルに開き、Walkthrough はその 変更のウォークスルー を開きます。アプリが別のプロジェクトを開いている場合は、先に PR のプロジェクトに切り替えます。どちらもデスクトップと Web だけで使えます。
下部の Merge は、マージ前に確認し、いつものマージ方法を使います。ドラフトには Ready for review もあります。
開いている Issue やプルリクエストの下部には Close issue または Close pull request(GitLab では Close merge request)があり、閉じたものには Reopen issue または Reopen pull request(Reopen merge request)があります。元に戻せる操作なので、確認は出ません。マージ済みのプルリクエストは閉じることも開き直すこともできません。GitHub では、Issue は完了として閉じられます。
関連
- GitHub Issues と PR — GitHub を接続し、Issue をメッセージに添付する
- Worktree セッション — worktree セッションの開始場所
- 統合機能 — Linear を接続し、チームをプロジェクトに対応付ける