|
7 | 7 | <summary>Table of Contents</summary>
|
8 | 8 |
|
9 | 9 | - [Quick Start](#quick-start)
|
10 |
| -- [Why SF Decomposer](#why-sf-decomposer) |
| 10 | +- [Why Choose `sf-decomposer`](#why-choose-sf-decomposer) |
11 | 11 | - [Commands](#commands)
|
12 | 12 | - [`sf decomposer decompose`](#sf-decomposer-decompose)
|
13 | 13 | - [`sf decomposer recompose`](#sf-decomposer-recompose)
|
@@ -56,23 +56,25 @@ sf decomposer recompose -m "flow" -m "labels"
|
56 | 56 |
|
57 | 57 | 6. Deploy recomposed metadata
|
58 | 58 |
|
59 |
| -## Why SF Decomposer |
| 59 | +## Why Choose `sf-decomposer` |
60 | 60 |
|
61 |
| -Why should you consider using `sf-decomposer` over Salesforce's decomposition? |
| 61 | +Salesforce's built-in decomposition has limitations. `sf-decomposer` offers more control, flexibility, and versioning benefits for Admins and Developers. |
62 | 62 |
|
63 |
| -- **Broad Metadata Support**: Unlike Salesforce's decomposition, `sf-decomposer` supports most metadata types available in the Metadata API. |
64 |
| -- **Selective Decomposition**: `sf-decomposer` allows you to decompose only the metadata you need instead of Salesforce's all-or-nothing approach. |
65 |
| - - See [.sfdecomposerignore](#.sfdecomposerignore) |
66 |
| -- **Complete Decomposition**: Partially decomposed metadata types (e.g., Salesforce's `decomposePermissionSetBeta2`) can be fully decomposed by `sf-decomposer`. |
67 |
| -- **Consistent Sorting**: `sf-decomposer` recomposition ensures elements are always sorted consistently for better version control. |
68 |
| -- **Multiple Decompose Formats**: `sf-decomposer` allows you to decompose the original XML file into smaller XML, JSON, JSON5, or YAML files depending on your preference. |
69 |
| -- **CI/CD Friendly**: Hooks allow for seamless decomposition and recomposition in CI/CD workflows. |
70 |
| -- **Better Version Control**: Smaller files make pull requests more readable and reduce merge conflicts. |
| 63 | +### Key Advantages |
71 | 64 |
|
72 |
| -In general, `sf-decomposer` helps Salesforce Admins do a few things with their source deployments: |
| 65 | +- **Supports More Metadata** – Works with most Metadata API types, unlike Salesforce’s limited decomposition. |
| 66 | +- **Selective Decomposition** – Decompose only what you need, avoiding Salesforce’s all-or-nothing approach. |
| 67 | + - See [.sfdecomposerignore](#.sfdecomposerignore) |
| 68 | +- **Fully Decomposes Metadata** – Ensures complete decomposition for types that Salesforce only partially decomposes (e.g., `decomposePermissionSetBeta2`). |
| 69 | +- **Consistent Sorting** – Keeps elements in a predictable order to reduce unnecessary version control noise. |
| 70 | +- **Multiple Output Formats** – Supports XML, JSON, JSON5, and YAML for greater flexibility. |
| 71 | +- **CI/CD Integration** – Hooks enable seamless decomposition and recomposition in automated workflows. |
| 72 | +- **Improved Version Control** – Smaller, structured files make pull requests easier to review and reduce merge conflicts. |
73 | 73 |
|
74 |
| -- Enhance peer reviews of large metadata in CI/CD platforms like GitHub, i.e. easier-to-review diffs in pull requests |
75 |
| -- Make deployments safer by ensuring only the intended changes are deployed, improving the overall version control process |
| 74 | +### How It Helps Salesforce Teams |
| 75 | + |
| 76 | +- **Better Peer Reviews** – More readable diffs for large metadata in GitHub and other CI/CD platforms. |
| 77 | +- **Safer Deployments** – Ensures only intended changes are deployed, improving release quality. |
76 | 78 |
|
77 | 79 | ## Commands
|
78 | 80 |
|
|
0 commit comments