Salesforce DX provides you with an integrated, end-to-end lifecycle designed for high-performance agile development. We can export metadata, define data import files, and easily specify the edition, features, and configuration options of your development, staging, and production environments.
It enable source-driven development of code, team collaboration with governance, seamless promotion of code from development to production, continuous integration with automated testing, and support for third party developer tools in the application lifecycle.
Salesforce DX defines an entirely new way to manage and develop Salesforce apps across their entire lifecycle to enable new levels of agility:
- Shifting the source of truth from the Salesforce org to version control.
- Focusing on source-driven development to facilitate team collaboration and continuous delivery (CD).
- Consolidating Salesforce developer and DevOps capabilities into a single command-line interface (CLI).
- Providing scratch orgs as ephemeral, configurable, and disposable environments, built from source, for development and continuous integration (CI).
- Prioritizing the use of industry standard tools and processes.
- Re-imagining our packaging technology to manage the encapsulation and deployment of metadata and code.
- And dozens of other things to support these efforts and more.
The CLI becomes the principal way in which developers will interact with the Salesforce org. You can use it to create scratch orgs, push and pull source and metadata into the org, and even perform operations that affect metadata in the org — for example, assigning a permissions set for an app or executing anonymous Apex.
The CLI also provides ways to make DevOps easier with Salesforce. You can use the CLI as part of build automation scripts, creating environments from source and running all of your tests.
Key Features
- Scratch Orgs – Currently, Salesforce developers use Developer Editions or Developer Sandbox for development and testing. Automation suites for CI will create scratch orgs as needed. When the task is complete—whether it’s a new feature, or a CI job—the scratch org can be deleted. If it’s not explicitly deleted, it will get marked for deletion and removed in a scheduled fashion. This is a significant change, and broad usage will help affirm our thoughts around the scratch org lifecycle.
- Version control system - The new scratch org makes it easier for developers to build their apps and automate continuous integration and delivery, all from the CLI. The scratch org allows developers to develop using local source, run all their tests, and deliver confidence before they commit back into VCS. Once updates are back in VCS, developers will be able to use standard web hooks to initiate build automation and continuous integration (CI), whether it's the Salesforce solution using Heroku Pipelines or a 3rd party tool like Jenkins or TeamCity.
- Developer Tools - Salesforce DX includes an updated Eclipse integrated development environment (IDE) that significantly expands the value of the toolset to developers.
- Integration with Existing Process – Incorporate Salesforce DX into your existing CI and CD systems. This could include Jenkins or TeamCity, but may also include Heroku Flow or a home-grown solution.
- Environment Hub -Environment Hub allows you to track all of the orgs you use. When Environment Hub is enabled in an org, it establishes that org as a central management point for other orgs. Users in that org can be granted permissions to create, delete, and manage orgs. Licenses for development, and testing orgs are linked to Environment Hub.
- New APIs - With the help of new APIS we can use features Environment Hub and Scratch Orgs. We can integrate these new features into your workflows.
For more information refer URL - https://developer.salesforce.com/platform/dx