{"meta":{"title":"積み上げプル要求で他のツールを使用する","intro":"Jujutsu、Sapling、git-town などのツールで、積み上げプル要求を使用します。","product":"Pull Request","breadcrumbs":[{"href":"/ja/pull-requests","title":"Pull Request"},{"href":"/ja/pull-requests/reference","title":"Reference"},{"href":"/ja/pull-requests/reference/use-other-tools-with-stacked-pull-requests","title":"積み上げ PR とその他のツール"}],"documentType":"article"},"body":"# 積み上げプル要求で他のツールを使用する\n\nJujutsu、Sapling、git-town などのツールで、積み上げプル要求を使用します。\n\n> \\[!NOTE] この機能はパブリック プレビュー段階であり、変更される可能性があります。\n\nスタックプル要求は、標準の Git ブランチと通常のプル要求に基づいて構築されているため、ローカル ワークフローに `gh stack` CLI 以外のツールを使用することを選択できます。 Jujutsu (jj)、Sapling、git-town などの別のツールを使用してブランチ チェーンを管理する場合は、 `gh stack link` コマンドを使用して、 GitHub上のスタックとしてそれらのブランチを開くことができます。\n\n`gh stack link` コマンドは、GitHub API のみを呼び出してスタックされたプル要求を作成します。ローカル追跡は作成されません。 ブランチに既にオープン プル要求がある場合、 `link` はそれを使用します。それ以外の場合は、適切なベース ブランチを使用して下書きプル要求が作成されます。\n\n## 分岐をスタックとしてリンクする\n\n1. 任意のツールを使用して、ブランチのチェーンをローカルに作成します。 たとえば、Jujutsu では次のようになります。\n\n   ```shell\n   jj new main -m \"first change\"\n   jj bookmark create change1 --revision @\n\n   jj new -m \"second change\"\n   jj bookmark create change2 --revision @\n\n   jj new -m \"third change\"\n   jj bookmark create change3 --revision @\n   ```\n\n2. ブランチをプッシュし、下から上に一覧表示されたスタックとしてリンクします。\n\n   ```shell\n   gh stack link change1 change2 change3\n   ```\n\n   これにより、ブランチがプッシュされ、正しいベースを持つ各ブランチのプル要求が作成され、 GitHub上のスタックとしてリンクされます。\n\n## 既存のスタックへの追加\n\n`link`で作成したスタックに分岐を追加するには、スタック内のプル要求とブランチの`gh stack link`一覧を使用して、下から上に\\*\\*\\*\\* をもう一度実行します。 既存のプル要求を番号で参照できます。\n\n```shell\ngh stack link 123 124 125 change4 change5\n```\n\n## ベース ブランチの設定または pull request のオープン\n\n既定では、 `link` はリポジトリの既定のブランチを対象とし、下書きのプル要求を作成します。 この動作を変更するには:\n\n* `--base`を使用して、別のトランク ブランチを指定します。\n* `--open`を使用して、下書きではなく、pull requests をレビューの準備完了としてマークします。\n\n```shell\ngh stack link --base develop --open change1 change2 change3\n```\n\n## 完全なローカル追跡のためのブランチの採用\n\n`gh stack rebase`、`gh stack sync`、スタック ナビゲーションなどのコマンドを使用できるように、完全なローカル スタック追跡が必要な場合は、代わりに`gh stack init`を使用して既存のブランチを採用してから送信します。\n\n```shell\ngh stack init change1 change2 change3\ngh stack submit\n```\n\n## 詳細については、次を参照してください。\n\n* [スタックされたプル要求](/ja/pull-requests/reference/stacked-pull-requests)"}