SlideShare a Scribd company logo
Version Control for PL/SQL
About Gerger
Gitora
Manage your PL/SQL code with Git
Hundreds of customers in 30+ countries.
yalim.gerger@gerger.co
http://www.gitora.com
Contact me for a free consultation:
• What is the problem?
• How did we solve it?
• Demo!!
• Implementation Strategies
Customer SpotlightSuccess Story: (In other words, this really works. :-) )
Manages over 20,000 database objects
Rhenus Logistics, leading logistics service company from
Germany, uses our solution.
Database objects are spread over 30+ schemas
Continuous delivery implementation
Errors during deployment will reduce by 95%.
You’ll be one of the pioneers.
You’ll deploy to production twice as often.
If you implement version control for DB Development:
Ready to tackle continuous delivery.
PL/SQL is not a file-based programming language.
Version Control is a solved problem in file-based languages.
The version control systems are almost exclusively concerned
with file-based programming languages.
Facts:
We need to find a way to bridge the database to these version
control systems.
Best path forward
Git is a distributed version control system (unlike SVN)
Facts about Git:
Two types of objects:
CREATE
CREATE OR REPLACE
Code is 90% of the problem.
Facts about database development:
This is how best developers work with Git
This is how best developers work with Git
No Queues
No Blocking
No Interruptions
Automatic deployment
No blocking between projects, features
Branching and merging is possible
Version control rules are enforced by the deployment pipeline
Source code is in Git
Faster hot fixes
Great automated testing
1..N developers
N Project A Servers N Project X Servers
Stage 1 Stage N
Deploy to Production
Every developer works in a
private environment in her
own WORKING DIRECTORY.
She has the full repository
with its full history locally.
N levels of upstream integration
N Projects
Traditional PL/SQL Development
Queued access
Blocking
Interrupting
DEV RELEASE
TEST
INTEGRATION
QA
Manual deployment
USER ACCEPTANCE PREPROD PROD
Intermingled projects, features, hot fixes
Practically impossible to branch, merge
Developers are expected to follow version management rules manually.
Version control repo is a last resort back up
or any other version control system
1..n database servers
Manual
No automated testing
DB is the WORKING DIRECTORY
Constraints we live in:
Very little change to the workflow
DBA
Cannot enforce a development tool
No private environment on day one
Minimal intrusion
We need to find a way to bridge the database to existing version
control software.
Edit PL/SQL Objects as usual in your favorite editor.
Log in to your own bridge in the editor (can be done automatically in most
cases).
Use bridge API’s or bridge GUI to perform version control tasks.
A database trigger listens to DDL events.
Version control commands update the database.
Only executes what’s changes in the DB. (Very fast!)
Bridge consists of a DB schema and some Java.
Create a Working Directory in the OS that is synced with the code in the Database.
DEV TEST
PL/SQL Development with Git Step 1 (One Repository)
Queued access
Blocking
Interrupting
DEV
Automatic deployment
USER ACCEPTANCE
HOTFIX
PREPROD PROD
Intermingled projects, features
Basic branching and merging is possible for hot fixes
Version control rules are enforced at the database level.
Source code is in Git
Automatic Script Generation with Git
RELEASE
TEST
INTEGRATION
QA
Development on DEV
only. On some other DB’s
bug fixes may be allowed.
Faster hot fixes Better automatic testing
PL/SQL Development Step 2 with Git (One Repository)
Fewer Queues
Less Blocking
Less interruption
DEV1
Automatic deployment
PROD
Less intermingled projects, features
Basic branching and merging is possible
Version control rules are enforced at the DB level and managed by a release manager.
Source code is in Git
Automatic DDL Script
Generation from Git
RELEASE
TEST
HOTFIX
INTEGRATION
QA
USER ACCEPTANCE
PREPROD
Hot fixes delivered faster
DEV2
N DEV servers
DEV1, DEV2,
DEV3,…DEVN
Better automatic testing
PL/SQL Development Step 3 with Gitora: Implement Any Git Workflow (One Repository)
No Queues
No Blocking
No Interruptions
Automatic deployment
PROD
No blocking between projects, features
Branching and merging is possible
Version control rules are enforced at the DB level and managed by a release manager.
Source code is in Git
Automatic DDL Script
Generation with Git
RELEASE
TEST
HOTFIX
INTEGRATION
QA
USER ACCEPTANCE
PREPROD
Faster hot fixes
Project Server [1..N]
RELEASE
TEST
INTEGRATION
QA
Every developer works in a
private environment.
Great automated testing
Demo!!!!
Fewer Queues
Less Blocking
Less interruption
DEV1
Automatic deployment
Less intermingled projects, features
Basic branching and merging is possible
Version control rules are enforced at the DB level and managed by a release manager.
Source code is in Git
PREPROD
Hot fixes delivered faster
DEV2
Better automatic testing
Demo Setup (One Repository)
About Gerger
Gitora
Manage your PL/SQL code with Git
Hundreds of customers in 30+ countries.
yalim.gerger@gerger.co
http://www.gitora.com
Contact me for a free consultation:

More Related Content

PPTX
PPTX
Notes on Debugging
PPT
Data Structure and Algorithms
PDF
جميع اوامر لغة الاسمبلي
PPTX
PPTX
Online voting system
PPT
Pac man
PPTX
Insects
Notes on Debugging
Data Structure and Algorithms
جميع اوامر لغة الاسمبلي
Online voting system
Pac man
Insects

What's hot (20)

PDF
Cutting the Kubernetes Monorepo in pieces – never learnt more about git
PDF
AOS Lab 2: Hello, xv6!
PPT
Online voting system ppt by anoop
PPT
Online Voting System - Project
PPTX
Conditional statements & Loops
PPTX
Introduction to JFrog Artifactory​ Presentation
PPTX
Tail Recursion in data structure
DOCX
Online Movie ticket booking Project
PDF
Online train ticket booking system project.pdf
PPTX
LPG BOOKING SYSTEM [ bookmylpg.com ]
PPTX
Bitwise operators
DOCX
Jsp project topics
PDF
Airline Reservation System - Software Engineering
PPT
Assembler
PDF
Online Voting Module
 
PPTX
Insect life cycle (grasshopper and ladybug)
PDF
Oop basic overview
PPTX
Dive into ROP - a quick introduction to Return Oriented Programming
PPT
Computer programming concepts
Cutting the Kubernetes Monorepo in pieces – never learnt more about git
AOS Lab 2: Hello, xv6!
Online voting system ppt by anoop
Online Voting System - Project
Conditional statements & Loops
Introduction to JFrog Artifactory​ Presentation
Tail Recursion in data structure
Online Movie ticket booking Project
Online train ticket booking system project.pdf
LPG BOOKING SYSTEM [ bookmylpg.com ]
Bitwise operators
Jsp project topics
Airline Reservation System - Software Engineering
Assembler
Online Voting Module
 
Insect life cycle (grasshopper and ladybug)
Oop basic overview
Dive into ROP - a quick introduction to Return Oriented Programming
Computer programming concepts
Ad

Similar to Version control for PL/SQL (20)

PDF
Gitora, Version Control for PL/SQL
PDF
Gitora, Version Control for PL/SQL
PDF
Gitora, Version Control for PL/SQL
PDF
Introducing Gitora,the version control tool for PL/SQL
PDF
SQL Server DevOps Jumpstart
PPT
Alm tce parallel development
PDF
Managing Software Dependencies and the Supply Chain_ MIT EM.S20.pdf
PPTX
Git essential training & sharing self
PDF
Gradle(the innovation continues)
PDF
Git Tutorial | Git Basics - Branching, Merging, Rebasing | Learn Git | DevOps...
PPTX
DevOps Interview Questions Part - 1 | Devops Interview Questions And Answers ...
PDF
DevOps Service | Mindtree
PDF
GitLab Integration Adapter - Datasheet
PDF
Achieving Full Stack DevOps at Colonial Life
PPT
SynapseIndia drupal presentation on drupal info
PPTX
The challenges and pitfalls of database deployment automation
PPTX
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
PPTX
Session on evaluation of DevSecOps
PDF
Increase the Velocity of Your Software Releases Using GitHub and DeployHub
PPTX
Short Introduction of software engineering for bioinformatics
Gitora, Version Control for PL/SQL
Gitora, Version Control for PL/SQL
Gitora, Version Control for PL/SQL
Introducing Gitora,the version control tool for PL/SQL
SQL Server DevOps Jumpstart
Alm tce parallel development
Managing Software Dependencies and the Supply Chain_ MIT EM.S20.pdf
Git essential training & sharing self
Gradle(the innovation continues)
Git Tutorial | Git Basics - Branching, Merging, Rebasing | Learn Git | DevOps...
DevOps Interview Questions Part - 1 | Devops Interview Questions And Answers ...
DevOps Service | Mindtree
GitLab Integration Adapter - Datasheet
Achieving Full Stack DevOps at Colonial Life
SynapseIndia drupal presentation on drupal info
The challenges and pitfalls of database deployment automation
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
Session on evaluation of DevSecOps
Increase the Velocity of Your Software Releases Using GitHub and DeployHub
Short Introduction of software engineering for bioinformatics
Ad

More from Gerger (9)

PDF
Source Control for the Oracle Database
PDF
Big Data for Oracle Professionals
PDF
Apache Spark, the Next Generation Cluster Computing
PDF
Best Way to Write SQL in Java
PDF
PostgreSQL for Oracle Developers and DBA's
PDF
Shaping Optimizer's Search Space
PDF
Monitoring Oracle Database Instances with Zabbix
PDF
Introducing ProHuddle
PDF
Use Cases of Row Pattern Matching in Oracle 12c
Source Control for the Oracle Database
Big Data for Oracle Professionals
Apache Spark, the Next Generation Cluster Computing
Best Way to Write SQL in Java
PostgreSQL for Oracle Developers and DBA's
Shaping Optimizer's Search Space
Monitoring Oracle Database Instances with Zabbix
Introducing ProHuddle
Use Cases of Row Pattern Matching in Oracle 12c

Recently uploaded (20)

PDF
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
PDF
System and Network Administration Chapter 2
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PPTX
Odoo POS Development Services by CandidRoot Solutions
PPTX
Transform Your Business with a Software ERP System
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PDF
Understanding Forklifts - TECH EHS Solution
PDF
medical staffing services at VALiNTRY
PDF
Nekopoi APK 2025 free lastest update
PPTX
L1 - Introduction to python Backend.pptx
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
Digital Strategies for Manufacturing Companies
PDF
System and Network Administraation Chapter 3
PDF
PTS Company Brochure 2025 (1).pdf.......
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PPTX
Introduction to Artificial Intelligence
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
System and Network Administration Chapter 2
How to Migrate SBCGlobal Email to Yahoo Easily
Design an Analysis of Algorithms I-SECS-1021-03
Odoo POS Development Services by CandidRoot Solutions
Transform Your Business with a Software ERP System
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Navsoft: AI-Powered Business Solutions & Custom Software Development
Understanding Forklifts - TECH EHS Solution
medical staffing services at VALiNTRY
Nekopoi APK 2025 free lastest update
L1 - Introduction to python Backend.pptx
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
Digital Strategies for Manufacturing Companies
System and Network Administraation Chapter 3
PTS Company Brochure 2025 (1).pdf.......
Design an Analysis of Algorithms II-SECS-1021-03
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Introduction to Artificial Intelligence
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...

Version control for PL/SQL

  • 2. About Gerger Gitora Manage your PL/SQL code with Git Hundreds of customers in 30+ countries. yalim.gerger@gerger.co http://www.gitora.com Contact me for a free consultation:
  • 3. • What is the problem? • How did we solve it? • Demo!! • Implementation Strategies
  • 4. Customer SpotlightSuccess Story: (In other words, this really works. :-) ) Manages over 20,000 database objects Rhenus Logistics, leading logistics service company from Germany, uses our solution. Database objects are spread over 30+ schemas Continuous delivery implementation
  • 5. Errors during deployment will reduce by 95%. You’ll be one of the pioneers. You’ll deploy to production twice as often. If you implement version control for DB Development: Ready to tackle continuous delivery.
  • 6. PL/SQL is not a file-based programming language. Version Control is a solved problem in file-based languages. The version control systems are almost exclusively concerned with file-based programming languages. Facts: We need to find a way to bridge the database to these version control systems.
  • 7. Best path forward Git is a distributed version control system (unlike SVN) Facts about Git:
  • 8. Two types of objects: CREATE CREATE OR REPLACE Code is 90% of the problem. Facts about database development:
  • 9. This is how best developers work with Git
  • 10. This is how best developers work with Git No Queues No Blocking No Interruptions Automatic deployment No blocking between projects, features Branching and merging is possible Version control rules are enforced by the deployment pipeline Source code is in Git Faster hot fixes Great automated testing 1..N developers N Project A Servers N Project X Servers Stage 1 Stage N Deploy to Production Every developer works in a private environment in her own WORKING DIRECTORY. She has the full repository with its full history locally. N levels of upstream integration N Projects
  • 11. Traditional PL/SQL Development Queued access Blocking Interrupting DEV RELEASE TEST INTEGRATION QA Manual deployment USER ACCEPTANCE PREPROD PROD Intermingled projects, features, hot fixes Practically impossible to branch, merge Developers are expected to follow version management rules manually. Version control repo is a last resort back up or any other version control system 1..n database servers Manual No automated testing DB is the WORKING DIRECTORY
  • 12. Constraints we live in: Very little change to the workflow DBA Cannot enforce a development tool No private environment on day one Minimal intrusion We need to find a way to bridge the database to existing version control software.
  • 13. Edit PL/SQL Objects as usual in your favorite editor. Log in to your own bridge in the editor (can be done automatically in most cases). Use bridge API’s or bridge GUI to perform version control tasks. A database trigger listens to DDL events. Version control commands update the database. Only executes what’s changes in the DB. (Very fast!) Bridge consists of a DB schema and some Java. Create a Working Directory in the OS that is synced with the code in the Database. DEV TEST
  • 14. PL/SQL Development with Git Step 1 (One Repository) Queued access Blocking Interrupting DEV Automatic deployment USER ACCEPTANCE HOTFIX PREPROD PROD Intermingled projects, features Basic branching and merging is possible for hot fixes Version control rules are enforced at the database level. Source code is in Git Automatic Script Generation with Git RELEASE TEST INTEGRATION QA Development on DEV only. On some other DB’s bug fixes may be allowed. Faster hot fixes Better automatic testing
  • 15. PL/SQL Development Step 2 with Git (One Repository) Fewer Queues Less Blocking Less interruption DEV1 Automatic deployment PROD Less intermingled projects, features Basic branching and merging is possible Version control rules are enforced at the DB level and managed by a release manager. Source code is in Git Automatic DDL Script Generation from Git RELEASE TEST HOTFIX INTEGRATION QA USER ACCEPTANCE PREPROD Hot fixes delivered faster DEV2 N DEV servers DEV1, DEV2, DEV3,…DEVN Better automatic testing
  • 16. PL/SQL Development Step 3 with Gitora: Implement Any Git Workflow (One Repository) No Queues No Blocking No Interruptions Automatic deployment PROD No blocking between projects, features Branching and merging is possible Version control rules are enforced at the DB level and managed by a release manager. Source code is in Git Automatic DDL Script Generation with Git RELEASE TEST HOTFIX INTEGRATION QA USER ACCEPTANCE PREPROD Faster hot fixes Project Server [1..N] RELEASE TEST INTEGRATION QA Every developer works in a private environment. Great automated testing
  • 18. Fewer Queues Less Blocking Less interruption DEV1 Automatic deployment Less intermingled projects, features Basic branching and merging is possible Version control rules are enforced at the DB level and managed by a release manager. Source code is in Git PREPROD Hot fixes delivered faster DEV2 Better automatic testing Demo Setup (One Repository)
  • 19. About Gerger Gitora Manage your PL/SQL code with Git Hundreds of customers in 30+ countries. yalim.gerger@gerger.co http://www.gitora.com Contact me for a free consultation: