Органы Salesforce, кроме «чистых» организаций, в настоящее время не обеспечивают отслеживание источника, что позволяет точно определять изменения пользователя в метаданных и извлекать только эти изменения. Это выполняется клиентом SFDX / Metadata API, например Salesforce DX или CumulusCI (отказ от ответственности: я работаю в команде CumulusCI).
Я бы не пытался реализовать клиент Metadata API в PowerShell; вместо этого используйте для этого один из существующих инструментов.
Органы Salesforce, отличные от нуля, в настоящее время не обеспечивают отслеживание источника. Чтобы определить изменения пользователя, вы можете либо
- Попытаться извлечь все метаданные и сопоставить их с вашим контролем версий, что значительно сложнее, чем кажется, и реализовано различными коммерческими инструментами DevOps для Salesforce ( GearSet, Copado, et c).
- Попросите пользователя вручную добавить компоненты в набор изменений или неуправляемый пакет и использовать клиент API метаданных, как описано выше, для получения содержимого этого пакета. (Малоизвестный факт, набор изменений можно получить как пакет!)
Подчеркнем: DevOps на Salesforce не работает, как другие платформы . Работа с API-интерфейсом метаданных требует значительных затрат времени и специализации. Используйте существующую работу сообщества Salesforce там, где это возможно, но имейте в виду, что выкладываемая задача может быть гораздо более сложной, чем вы думаете, и это не обязательно то, что вы можете просто собрать вместе из готовых компонентов.