Branching Strategy: In our project we have 3 main branches: Main, UAT & QA & we are using SFDX-Git-Delta plugin (SGD) deploy to promote incremental changes.

Developers promote changes to feature branch which gets merged after approving PR into QA. Because SGD detects the incremental changes merging QA to UAT to PROD is very easy as it picks up only incremental changes.

For example - Suppose using SGD 3 changes are deployed from QA to UAT :

  1. Apex Class
  2. flow
  3. Permission Set

Question: When promoting changes from UAT to Prod, SGD will pick apex class, flow & permission set. How to rollback 'flow changes' back to QA from UAT so that SGD will only pick Apex class & permission set to move to PROD from UAT.

Is there any specific command we could use in SGD to rollback changes (Back promote changes)

Any kind of help is highly appreciated.

Thank you.

1 Answer 1


To revert changes you can use basic git revert functionality and then use SGD to help with deploying the reversal.

  1. Start with the branch feature/new-case-process and deploy it against your target branch/org, where you've made changes. Make note of the commit hash or use git log to find the merge commit where the changes were merged into your target branch (e.g develop).

  2. Checkout the target branch (develop in this case):

    git checkout develop

  3. Create a new branch for reverting the changes:

    git checkout -b revert/new-case-process

  4. Revert the merge commit using the commit hash:

    git revert -m 1 <commit-hash>

    Note: Replace with the actual commit hash from step 2.

  5. Push the new branch to your remote repository:

    git push origin revert/new-case-process

Now, you can use SGD or your preferred deployment method to apply the reverted changes. Repeat a similar process for other branch deployments like develop vs UAT.

I highly recommend using a GUI to interact with Git like GitKraken.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .