Salesforce CLI コマンド
コマンドに -h
のオプションをつけることで、ヘルプを閲覧することが可能。
インストール → Salesforce CLI
公式のリファレンス → sf | Salesforce CLI Command Reference
リリースノート → forcedotcom | releasenotes/README.md
環境の準備
コマンド例 |
用途 |
補足 |
sf org login web -a [エイリアス] |
Salesforce組織の認証 |
-d デフォルトのDev Hub組織に指定 |
sf org login web -r https://test.salesforce.com/ -a [エイリアス] |
Salesforce組織の認証(sandbox) |
|
sf project generate -n [プロジェクト名] |
Salesforce DXプロジェクトの作成(スキャフォールディング) |
|
sf org list |
Salesforce CLI で作成・認証した組織の一覧を表示 |
|
sf org logout -o [対象組織] |
認証済みの組織からログアウトする |
-p で確認をスキップする。 不要になったスクラッチ組織はforce:org:delete で組織を削除することが推奨される。 |
sf org open -o [対象組織] |
Salesforce組織をブラウザで開く |
|
sf alias list |
エイリアスの一覧を表示 |
|
sf alias set [エイリアス]=[ユーザ名] |
エイリアスの設定 ユーザ名を空欄にするとエイリアスの削除 |
|
Deploy・Retrieve
コマンド例 |
用途 |
補足 |
sf project retrieve start -d [ファイルパス] |
ソース形式での取得 |
-d [ファイルパス]
-x [マニフェストファイルのパス]
-m [メタデータタイプ]
|
sf project deploy start -d [ファイルパス] |
ソース形式でのデプロイ |
-d [ファイルパス]
-x [マニフェストファイルのパス]
-m [メタデータタイプ]
|
sf project delete source -p [ファイルパス] |
|
-p [ファイルパス]
-m [メタデータタイプ]
|
sf project deploy validate -d [ファイルパス] -l [テストレベル] |
デプロイの検証を行う |
クイックリリースが可能になる |
sf project deploy quick -i [検証済みのJOB ID] |
クイックリリース |
検証が成功したリリースのみ使用可能 |
- テストレベルは、
NoTestRun
、RunSpecifiedTests
、RunLocalTests
、RunAllTestsInOrg
が選択可能。
- 特定のフローバージョンを取得・デプロイする場合、ファイル名の最後に
-[バージョン番号]
をつける。つけない場合、最新のフロー(有効なフローではない)が対象になる。詳細はこちら。
- 例:
sf project retrieve start -m flow:CreateAccountScreen-3
Dev Hub組織・スクラッチ組織
コマンド例 |
用途 |
補足 |
sf org login web -d -a [エイリアス] |
デフォルトのDev Hub組織を設定 |
|
sf org create scratch -d -f [スクラッチ組織の設定ファイル] -a [エイリアス] |
Dev Hub組織からスクラッチ組織の作成 |
-d デフォルトのスクラッチ組織に設定
-v [Dev Hub組織のユーザ名]
|
sf org open |
ブラウザで組織を開く |
-u [ユーザ名・エイリアス] |
sf project retrieve start |
スクラッチ組織・Sandboxから変更をプルする |
-o [ユーザ名・エイリアス] |
sf project deploy start |
スクラッチ組織から変更をプッシュする |
-o [ユーザ名・エイリアス] |
sf org assign permset -n [権限セット名] |
権限セット付与 |
|
sf org delete scratch -o [対象組織] |
スクラッチ組織を削除する |
|
パッケージ
コマンド例 |
用途 |
補足 |
sfdx force:package:list |
パッケージの一覧を表示 |
-v [Dev Hub組織のユーザ名] |
sfdx force:package:create -n [パッケージ名] -d [説明] -r force-app -t Unlocked |
ロック解除済みパッケージの作成 |
-v [Dev Hub組織のユーザ名]
-r [パッケージの内容を含むディレクトリのパス]
|
sfdx force:package:version:create -p [パッケージ名・ID] -d [パッケージの内容を含むディレクトリ] -k [パッケージを保護するキー] -w 10 |
パッケージバージョンの作成 |
-v [Dev Hub組織のユーザ名] パッケージバージョンは、パッケージ内容および関連するメタデータの固定スナップショット。作成に時間がかかる。 |
sfdx force:package:install -t [ユーザ名] -p [パッケージバージョン名・ID] -k [パッケージを保護するキー] --noprompt -w 10 |
パッケージインストール |
|
sfdx force:package:version:promote -p [パッケージバージョン名・ID] -v [Dev Hub組織のユーザ名] |
パッケージバージョンを本番環境にリリース可能なステータスに変更する |
|
sfdx force:limits:api:display |
一日で作成できるパッケージバージョンの数を確認する |
Package2VersionCreatesの行を確認する |
ファイルの作成
コマンド例 |
用途 |
補足 |
sf apex generate class -n [ファイル名] |
Apexクラスの作成 |
|
sf apex generate trigger -n [ファイル名] --sobject [オブジェクト名] |
Apexトリガの作成 |
|
sf visualforce generate page -n [ファイル名] -l [ラベル名] |
|
|
sf visualforce generate component -n [ファイル名] -l [ラベル名] |
|
|
sf lightning generate component --type lwc -n [コンポーネント名] |
lwcの作成 |
|
sf lightning generate component -n [コンポーネント名] |
auraコンポーネントの作成 |
|
データのインポート・エクスポート
コマンド例 |
用途 |
補足 |
sf data tree export -d [ディレクトリ] -q "クエリ" |
リレーションを維持した形式(.json)でエクスポート |
|
sf data import -p [JSONファイルのパス] |
リレーションを維持した形式(.json)でインポート |
|
Apexテスト
コマンド例 |
用途 |
補足 |
sf apex run test -n [テストクラス名] |
指定したApexテストの実行 |
カンマ区切りで複数指定可能。クラス名は大文字小文字を区別する。 |
sf apex run test -t [テストクラス名.テストメソッド名] -r human |
指定したApexテストメソッドを実行 |
カンマ区切りで複数指定可能。テストクラスも指定可能。 |
sf apex run test -s [テストスイート名] |
指定したApexテストスイートのテストを実行 |
カンマ区切りで複数指定可能 |
sf apex get test -i [テスト実行ID] |
テスト結果を取得する |
-c カバレッジ率を表示
-d [出力ファイルパス]
|
デバッグログ
コマンド例 |
用途 |
補足 |
sf apex list log |
デバッグログの一覧を表示 |
|
sf apex get log --log-id [デバッグログのID] -d [保存先のディレクトリ] |
デバッグログの取得 |
デバッグログのIDはsf apex list log で取得可能 |
sf apex get log --number [取得数] -d [保存先のディレクトリ] |
直近のデバッグログを取得する |
|
sf tail log |
リアルタイムにログを表示 |
--color ログに色をつける
-d [ログレベル] ログレベルを指定する |
- 表示件数が多くなるときはtailコマンドで表示件数を減らす。
sf apex list log | tail -5
- (PowerShell)
sf apex list log | Select-Object -first 5
組織の制限の確認
コマンド例 |
用途 |
補足 |
sf apex list log |
組織内の制限に関する情報を表示する |
|
sf limits recordcounts display |
オブジェクトごとのレコード数を表示する |
|
その他
- SalesforceCLIのバージョンの確認
- SalesforceCLIの更新
- プラグインの一覧を表示
- Visual Studio CodeのSオブジェクト定義の更新(入力補完の更新)
- Visual Studio Codeのコマンドパレットから
SFDX: Refresh SObject Definitions
参考