Managed packages behave differently to most other metadata.
As a rule, there are two approaches to dealing with managed packages in version control:
- If the packages are not being modified beyond the original install, only the
Installed packagetype needs to be added to version control. This is because the installed package effectively provides everything an org needs to ensure that managed packages are in sync between source and target.
- If modifications are being made to the package, both the
Installed packageand the modified metadata must be added to version control to allow the team to track changes. Given the number of changes associated with managed packages, it is advisable to treat them as distinct features, tracked in their own branches. This will help teams spot changes being made through package upgrades versus
other feature development work.
You can find more information about getting started with version control for Salesforce in Gearset's whitepaper.