LoginSignup
47
39

Salesforce CLI チートシート

Last updated at Posted at 2020-01-20

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] クイックリリース 検証が成功したリリースのみ使用可能
  • テストレベルは、NoTestRunRunSpecifiedTestsRunLocalTestsRunAllTestsInOrgが選択可能。
  • 特定のフローバージョンを取得・デプロイする場合、ファイル名の最後に-[バージョン番号]をつける。つけない場合、最新のフロー(有効なフローではない)が対象になる。詳細はこちら
    • 例: 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 [対象組織] スクラッチ組織を削除する

パッケージ:package:

コマンド例 用途 補足
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のバージョンの確認
    • sf -v
  • SalesforceCLIの更新
    • sf update
  • プラグインの一覧を表示
    • sf plugins
  • Visual Studio CodeのSオブジェクト定義の更新(入力補完の更新)
    • Visual Studio CodeのコマンドパレットからSFDX: Refresh SObject Definitions

参考

47
39
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
47
39