🏅 Revvy.io Advanced Certification: Hands-on Scenario Guide
Become a certified Revvy.io Advanced DevOps Practitioner — by completing a hands-on, guided deployment scenario.
Tagline: Master Revvy.io through real-world challenges — conquer branching, conflicts, and deployments like a pro!
Welcome to the Revvy.io Advanced Certification! This hands-on guide takes you on an exciting journey through branching, pull requests, conflict resolution, and deployments using Salesforce orgs and Revvy.io. Whether you're a developer, admin, or DevOps enthusiast, you'll gain practical skills to excel in modern Salesforce development.
What You'll Learn
By completing this certification, you'll:
Set up and manage three Salesforce orgs
Create intentional metadata conflicts to practice resolution
Master the Revvy.io DevOps workflow, including:
Connecting Salesforce orgs
Creating and managing branches
Retrieving metadata
Handling pull requests
Resolving conflicts
Running pre-deployment checks
Deploying to a target org
Prerequisites
Before you start, ensure you have:
A modern browser (Chrome, Edge, or Safari)
Optional: Developer Console or VS Code with Salesforce CLI for a smoother experience
No Salesforce experience? No problem! Follow the steps, and you'll learn as you go.
Module 1: Set Up Your Environment
Step 1: Create Three Salesforce Orgs
You'll need three Salesforce orgs to simulate a real-world DevOps pipeline:
Connection 1
DevOrg_One
Hosts Version A of code and fields
Connection 2
DevOrg_Two
Hosts Version B (conflicting)
Deployment Target
UAT_Org
Receives final deployment
How to Get Orgs:
Sign up for free Developer Orgs at Salesforce Developer Signup
Or create sandboxes in an existing Salesforce org

Step 2: Add Metadata to Dev Orgs
Add conflicting metadata to DevOrg_One and DevOrg_Two. Keep UAT_Org empty for now.
2.1: DevOrg_One
Apex Class:
Go to: Setup → Developer Console → File → New → Apex Class
Name it
AccountUtilsand add:
public class AccountUtils { public static String formatName(String name) { return 'Mr. ' + name; } }Custom Field:
Go to: Setup → Object Manager → Account → Fields & Relationships → New
Create a Text field:
Label: Type
API Name: Type__c (auto-generated)
Length: 255
2.2: DevOrg_Two
Apex Class (same name, different logic):
Go to: Setup → Developer Console → File → New → Apex Class
Name it
AccountUtilsand add:
public class AccountUtils { public static String formatName(String name) { return 'Customer: ' + name; } }
Custom Field (same name, different type):
Go to: Setup → Object Manager → Account → Fields & Relationships → New
Create a Picklist field:
Label: Type
API Name: Type__c (auto-generated)
Values: Prospect, Client, Partner
2.3: UAT_Org
Keep
UAT_Orgclean—no changes needed yet.
Step 3: Connect to Revvy.io
Visit Revvy.io
New user? Click Register and complete the form. Otherwise, log in.
Go to: Connections → Add Connection
Authenticate:
DevOrg_One
DevOrg_Two
UAT_Org
Alt text: Screenshot of Revvy.io Connections page showing added Salesforce orgs.

Tip: Save your credentials securely for quick access later.
Step 4: Retrieve Metadata
For each org connection:
Click Retrieve
Verify the metadata:
DevOrg_One: Shows Text field and
Mr.logicDevOrg_Two: Shows Picklist field and
Customer:logic
Open the metadata to inspect XML differences
Checkpoint: If metadata doesn’t appear, double-check your org connections.
Module 2: Branching and Committing
Step 5: Create Branches
Set up this branch structure in Revvy.io:
main
├── feature/F1-devorg1
├── feature/F2-devorg2
└── release/JuneReleaseSteps:
Go to: Code → Branches → Create Branch
Branch: feature/F1-devorg1
Click Add Components
Select: DevOrg_One
Choose:
Apex Class: AccountUtils
Custom Field: Account.Type__c
Commit with message:
Adding changes from DevOrg_One – AccountUtils + Type__c
Branch: feature/F2-devorg2
Repeat, selecting DevOrg_Two
Choose same components (conflicting versions)
Commit with message:
Adding changes from DevOrg_Two – AccountUtils + Type__c
Branch: release/JuneRelease
Base it on
mainThis will be your merge target

Pro Tip: Descriptive commit messages make collaboration easier!
Module 3: Pull Requests and Conflict Resolution
Step 6: Merge Changes
Create pull requests (PRs) to merge your feature branches into the release branch.
Go to: Pull Requests → Create
Pull Request 1:
Source: feature/F1-devorg1
Target: release/JuneRelease
Name:
Merge DevOrg_One changes into June ReleaseDescription:
Merges DevOrg_One changes: - Apex Class: AccountUtils - Custom Field: Account.Type__c (Text)Create and merge (should be conflict-free)
🔄 Refresh if the page doesn’t update
Pull Request 2:
Source: feature/F2-devorg2
Target: release/JuneRelease
Name:
Merge DevOrg_Two changes into June ReleaseDescription:
Merges DevOrg_Two changes: - Apex Class: AccountUtils (conflicting) - Custom Field: Account.Type__c (Picklist)Create the PR
Resolve Conflicts (if any):
In the PR editor, review conflicts in
AccountUtilsandAccount.Type__cOptions:
Combine logic for
AccountUtilsChoose Text or Picklist for
Account.Type__c
Add a comment explaining your resolution
Merge the PR
Refresh if needed
Result:
release/JuneReleasenow contains changes from both orgs

Note: If no conflicts appear, review the diff and merge directly.
Module 4: Pre-Deployment Checks
Step 7: Run Safety Checks
Ensure your deployment is safe with Revvy.io’s pre-deploy tools.
Go to: Code → release/JuneRelease
Click the three-dot menu (⋮) next to Deploy
Select PreDeploy Fix
Choose: UAT_Org
Click Run
Check the Activities tab for Pre Deploy Fix Search: Completed
From the three-dot menu, enable Overwrite Protection
Verify in Activities: Overwrite Protection: Completed
Why This Matters: These checks prevent accidental overwrites in UAT_Org.
Module 5: Deploy to UAT
Step 8: Validate and Deploy
In
release/JuneRelease, click the three-dot menu → ValidateSelect components (e.g.,
AccountUtils,Account.Type__c)Target: UAT_Org
Run Tests: Default
Click Run
Check Activities tab for Validate: Completed
Repeat for Deploy:
Same components and settings
Click Run
Confirm in Activities: Deploy: Completed
Success! Your changes are now live in UAT_Org.
Module 6: Finalize Your Codebase
Step 9: Merge to Main
Merge your release branch back to main for a production-ready codebase.
Go to: Pull Requests → Create
Source: release/JuneRelease
Target: main
Review components and diff
Create and merge the PR
Check Activities tab for merge completion
Best Practice: Always keep
mainaligned with deployed changes.
Module 7: Earn Your Certification
Step 10: Submit Your Work
Required Artifacts:
Branch list screenshot:
feature/F1-devorg1
feature/F2-devorg2
release/JuneRelease
Both pull requests with merge diffs
Pre-Deploy Fix and Overwrite Protection (Activities tab)
Validation and deployment success (Activities tab)
Salesforce Deployment Status (Setup → Deployment Status)
Submission Steps:
Open Revvy.io’s Intercom Messenger (bottom-right corner)
Select Submit Certification
Upload all screenshots
Click Submit

Rewards:
Exclusive Swag (first 50 participants): Mug, hat, or Amazon gift card

Early Access (first 50 participants): Try new CI/CD features
Support
Stuck? We’ve got you covered! 💬
Open Intercom Messenger to:
Ask a question
Report a bug
Send a message
Our team is here to ensure your success.
Ready to shine? Let’s get certified!
Last updated
Was this helpful?
