パイプラインをローカルで実行する
GitTree は、ワークフロー ファイルまたは 1 つのジョブに対して正確な act または gitlab-ci-local コマンドを準備し、それを新しいターミナルに入力して実行します。ジョブは、プッシュする前に、コンピューター上の Docker コンテナーで実行されます。ローカル パイプラインは無料プランの一部であり、ホスティング アカウントは必要ありません。
GitTree で無料で動作: すべてのローカル Git 機能。アカウントは必要ありません。
このページでは
始める前に
- Docker、実行中: Docker Desktop、OrbStack、Colima、または Docker Engine。両方のランナーがコンテナー内のすべてのジョブを開始します。
- ファイルのランナー: GitHub Actions (
.github/workflows/*.yml) の場合は act、GitLab CI (.gitlab-ci.yml) の場合は gitlab-ci-local。リポジトリの外、PATH 上のフォルダーにインストールします。 - 信頼されたリポジトリ (リポジトリ信頼): ローカル実行によりリポジトリのコードが実行されます。
- サポートされているターミナル シェル: macOS 上の bash、zsh、sh、または Fish。 Windows の PowerShell; Linux で bash、zsh、sh、またはfishを実行します。
どこで見つけられますか
- ツールバーの CI/CD ボタン: アカウントまたは Pro が接続されていない場合、ビューは Local pipelines で開きます。
- 左側のパネルの TOOLS セクション: Prepare local pipeline。
- ツールバー (Terminal の横) の Tools、またはリポジトリ タブのメニュー: Prepare local pipeline…。コマンド パレットまたは
Alt+Shift+Lでも使用できます。
| アクション | macOS | WindowsとLinux |
|---|---|---|
| コマンド パレット、次に Prepare local pipeline… | ⌘⇧P | Ctrl+Shift+P |
| Show CI/CD | ⌥P | Alt+P |
ステップ
必要なものを確認してください
CI/CD を開きます。 Local pipelines は、What you need: Docker、act、および gitlab-ci-local を Found または Not found とともに、それぞれが見つかった場所、リポジトリの信頼性、ターミナル シェルをリストします。見つからないプログラムには、そのインストール方法が示されています。インストールしてから、Check again を押します。 Ask Nour to Set Up the Local Runner は Pro の一部であり、現在誰でも無料で利用できます。コマンドをローカルで準備して実行することはできません。

ローカル パイプラインは「無料」とマークされています。それらの上でホストされている実行には、引き続き接続されたアカウントが必要です。GitTree はデモ リポジトリとのインターフェイスです。 パイプライン ファイルを追加するか、独自のファイルを使用します
Pipeline files in this repository は、各ファイルを Ready to run または実行できない理由とともにリストします。ファイルがまだないため、Add GitHub Actions sample は
.github/workflows/gittree-local.ymlを書き込み、Add GitLab CI sample は.gitlab-ci.ymlを書き込みます。それぞれに 2 つのコメント付きジョブがあります。 GitTree は既存のファイルに上書きすることはありません。ファイルがエディターで開きます。そこにビルド コマンドとテスト コマンドを入力します。コマンドを準備する
Run Locally…を押します。 Prepare local pipeline で、Pipeline config、Job または Runner default jobs、Terminal shell、次に Prepare command を選択します。まだ何も実行されていません。
ターミナルで実行します
Prepared command を読んでから、Type in new terminal を読んでください。 GitTree はそれを新しい端末に入力し、決して Enter キーを押しません。内容を確認して、自分で Enter キーを押します。ジョブの出力がターミナルに表示されます。
期待される結果
ランナーは初めてジョブのイメージを取得し、コンテナーで各ステップを実行し、その結果をターミナルに出力します。リポジトリのファイルは、コミットされているかどうかに関係なく、ディスク上にあるとおりに使用されます。
Docker とランナーをインストールします
| プログラム | macOS | Windows | Linux |
|---|---|---|---|
| Docker | Docker Desktop、OrbStack、または Colima | Docker Desktop | Docker Engine または Docker Desktop |
| 行為 (GitHub Actions) | brew install act | winget install nektos.act | nektosact.com のインストール スクリプト |
| gitlab-ci-local (GitLab CI) | npm install -g gitlab-ci-local | GitHub リリースの .exe (PATH 上のフォルダー内) | npm install -g gitlab-ci-local |
gitlab-ci-local を npm でインストールする場合は、Node.js 18 以降が必要です。 GitTree は PATH 上のプログラムのみを検索します。チェックのためにそれらを実行することは決してないので、Docker エンジンが開始されているかどうかを知ることはできません。
サンプルファイル
GitHub Actions サンプルは、build ジョブを実行してから、ubuntu-latest で test ジョブを実行します。最初の実行時に、どのランナー イメージを使用するかを尋ねます。 Medium はほとんどのプロジェクトに適しています。 GitLab CI サンプルは、alpine コンテナで同じ 2 つのジョブを実行します。 echo 行を独自のコマンドに置き換え、準備ができたらファイルをコミットします。リポジトリが GitHub または GitLab にある場合、そのホストもファイルを実行します。
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build
run: npm ci && npm run build
test:
runs-on: ubuntu-latest
needs: build
steps:
- uses: actions/checkout@v4
- name: Test
run: npm testBitbucket PipelinesとAzure Pipelines
bitbucket-pipelines.yml または azure-pipelines.yml でサポートされているローカル ランナーがないため、これらのファイルには No local runner が表示されます。コンピュータで同じ手順を実行するには、GitHub Actions または GitLab CI サンプルを追加し、そこにコマンドをコピーします。ホストされたパイプラインは、独自のファイルから実行され続けます。
ローカル実行とホストの違い
- ホスト上に設定されたシークレットと変数は利用できません。ジョブに必要なものを自分でランナーに渡します。
- act はデフォルトでプッシュトリガーのジョブを実行します。トリガーに関係なく実行するには、Job を選択します。
- GitTree がジョブをリストする場合、インクルード、テンプレート、再利用可能なワークフローが解決されません。ランナーは実行時にそれらを解決します。
- コンテナはネットワークにアクセスし、コンテナに与えられた資格情報を使用できます。
何か問題が発生した場合
「安全なネイティブ ランナーが PATH 上に見つかりませんでした。リポジトリの外にインストールしてから更新してください。」
リポジトリ内にない PATH 上のフォルダーに act または gitlab-ci-local をインストールし、Check again または Refresh を押します。シェル プロファイルの PATH を変更した場合は、macOS で GitTree を終了して再度開きます。
「このプロバイダー構成にはサポートされているローカル ランナーがありません。」
ファイルは Bitbucket または Azure パイプラインです。 GitHub Actions または GitLab CI サンプルを追加し、そこに手順をコピーします。
「ローカル パイプライン コマンドを準備する前に、このリポジトリを信頼してください。」
まずリポジトリを信頼し (リポジトリ信頼)、コマンドを再度準備します。
ターミナルは、Docker デーモンに接続できないと言います。
Docker Desktop、OrbStack、Colima、または Docker サービスを開始し、実行されるまで待ってから、コマンドでもう一度 Enter キーを押します。
質問
ローカル パイプラインには GitTree Pro またはホスティング アカウントが必要ですか?
いいえ。ローカル パイプラインは無料プランの一部であり、リポジトリのファイルの読み取り専用です。ホストされた CI/CD の実行、再実行、承認は Pro の一部です。
GitTree は私に代わってパイプラインを実行しますか?
いいえ。GitTree はコマンドを準備してターミナルに入力します。 Enter キーを押します。あなたが実行する前には何も実行されません。