開発に使用する主なCLIコマンドの一覧
####ログイン
コマンドを実行するとブラウザが開くので、IDとパスワードで対象組織にログインする。
sfdx force:auth:web:login -r loginurl -d -a aliasname
-d この組織をデフォルトの Dev Hub とする (省略可)
-r ログイン先のURL(省略すると login.salesforce.com)
-a エイリアスを指定
コマンド例:
//DX開発でDevHub組織にログインする
sfdx force:auth:web:login -d -a DevHub
//通常のsandboxにログインする
sfdx force:auth:web:login -r https://test.salesforce.com -a sand1
####登録済みの組織を表示
sfdx force:org:display
####Salesforce組織をブラウザ上で開く
エイリアス名を指定した組織をブラウザ上で開く。再ログインは不要。
sfdx force:org:open -u alias
-a エイリアスを指定
コマンド例:
sfdx force:org:open -u sand1
####DXプロジェクトの作成
開発用のプロジェクトを作成する。
sfdx force:project:create -n projectname
-n プロジェクト名(この名前でフォルダが作成される)
コマンド例:
sfdx force:project:create -n sampleProj
コマンドが実行されると、ローカル環境に下記のようなフォルダが作成される。
####Scratch組織以外へのコードの取得とリリース
git形式のpush/pullコマンドはScratch組織に対してのみ使用可能。通常のsandboxやDeveloper組織に対してコードを取得したりリリースするには deploy/retrieve コマンドを使用する。
#####コードの受信
sfdx force:source:retrieve -m metadata -u aliasname
-m メタデータ名
-a エイリアスを指定
sfdx force:source:retrieve -p folder -u aliasname
-p フォルダパス または ファイル名
-a エイリアスを指定
コマンド例:
// package.xml
sfdx force:source:retrieve -x ./manifest/package.xml -u sand1
//Layout
sfdx force:source:retrieve -m Layout -u sand1
//Apexクラス
sfdx force:source:retrieve -m ApexClass -u sand1
//Lightning Auraコンポーネント
sfdx force:source:retrieve -m AuraDefinitionBundle -u sand1
//Lightning Webコンポーネント
sfdx force:source:retrieve -m LightningComponentBundle -u san1
// CustomObject
sfdx force:source:retrieve -m CustomObject -u sand1
// standard Object
sfdx force:source:retrieve -m CustomObject:Account -u sand1
// flow
sfdx force:source:retrieve -m Flow:yourflowName -u sand1
// workflowrule - get object unit workflow
sfdx force:source:retrieve -m workflow -u sand1
// VisualForce Page
sfdx force:source:retrieve -m ApexPage -u sand1
#####コードの送信
sfdx force:source:deploy -m metadata -u aliasname
-m メタデータ名
-a エイリアスを指定
sfdx force:source:deploy -p folder -u aliasname
-p フォルダパス または ファイル名
-a エイリアスを指定
コマンド例:
//flow
sfdx force:source:deploy -m Flow:yourflowName -u sand1
//Lightning Auraコンポーネント
sfdx force:source:deploy -m AuraDefinitionBundle -u sand1
//Lightning Webコンポーネント
sfdx force:source:deploy -m LightningComponentBundle -u san1
//フォルダ指定
sfdx force:source:deploy -p force-app/main/default/aura -u sand1
//object release
sfdx force:source:deploy -p ./force-app/main/default/objects/xxxx -u sand1
or
sfdx force:source:deploy -p ./force-app/main/default/objects/xxxx/xxx.object-meta.xml -u sand1
//object field release
sfdx force:source:deploy -p ./force-app/main/default/objects/xxxx/fields/yyy.field-meta.xml -u sand1
// delete object field
sfdx force:source:delete -p ./force-app/main/default/objects/xxxx/fields/yyy.field-meta.xml -u sand1 -r
※-r No confirm prompt
####Apexクラスの作成
sfdx force:apex:class:create -n classname -d folderpath
-n Apexクラス名
-d 配置パス(通常はmain/default/classesを指定)
sfdx force:apex:class:create -n MyClass -d force-app/main/default/classes
####Lightning Auraコンポーネントの作成
sfdx force:lightning:component:create -n componentname -d folderpath
sfdx force:lightning:event:create -n componentname -d folderpath
-n コンポーネント名
-d ファイルを作成するパス(通常はmain/default/auraを指定)
コマンド例:
//コンポーネント作成
sfdx force:lightning:component:create -n lc_sampleComponent -d force-app/main/default/aura
//イベント作成
sfdx force:lightning:event:create -n lc_event -d force-app/main/default/aura
####Lightning Webコンポーネントの作成
sfdx force:lightning:component:create --type lwc -n componentname -d folderpath
-n コンポーネント名
-d ファイルを作成するパス(通常はmain/default/lwcを指定)
コマンド例:
sfdx force:lightning:component:create --type lwc -n lwc_sampleComponent -d force-app/main/default/lwc
####リソースの削除
Lightning Webコンポーネントはこの方法以外では削除できない(2019/1月現在)
sfdx force:source:delete -p filename -u DevHub
-p 削除したいフォルダパス または ファイル名
-a エイリアスを指定
コマンド例:
sfdx force:source:delete -p force-app/main/default/lwc/LWC_Sample -u sand1