
We currently have three environments: development (dev), user acceptance testing (UAT), and production (prod). At present, we deploy changes using PowerShell commands (pac paportal) manually, but we're exploring ways to push changes to a repository and implement branching for different features as well as integrate it with our cicd pipeline via jenkins.
One approach we're considering is to execute a pac paportal download command at the end of each day and push these changes to the repository. However, a potential issue i see is if multiple developers are working on different features. This could lead to conflicts in the portal pages codes, as some features might exist in one developer's version but not in the other's, and codes could be overwritten once we do a pac download
what is the best practices for this and what can we do if we want to integrate it with our own ci/cd pipeline. is it better to have each developer have their own "developer environment" where they could work on their own feature and have a dedicated dev environment where features are deployed after a pull request have been merged?