Monthly Archives: August 2015

Benefits of using Gitora, Git for PL/SQL Developers

Outside of PL/SQL World (Java, JavaScript etc..) developers use version control systems more effectively. When used appropriately in the software development life cycle, a version control tool can shorten delivery times significantly by improving the manageability of the code base.

Using version control with PL/SQL though has always been challenging. In our experience very few, if any, IT departments use version control systems to manage their PL/SQL code base. Most are content with a basic check-in check-out mechanism.

We created Gitora to help PL/SQL developers manage their code base better. Gitora achieves this by bridging the gap between the Oracle Database and Git, the most prominent and popular version control system used by millions of developers around the world.

With Gitora you can:

  • Perform the supported version control operations using a point and click interface. This reduces the barrier to entry for Git. Only a basic understanding of version control principles is good enough to get value from the product.
  • Move your PL/SQL code base automatically to a specific version of it (for example to match it to the version in production.)
  • Create new branches to work on new features without affecting the master code base.
  • Change between different branches of your code base automatically.
  • Merge your branches to the master code base automatically.
  • Create clones of your code base (for example in a different schema) make modifications and merge them back to the original code base automatically.
  • Browse the Git repository and see your commit history and changes associated with each commit.

Collaboration vs. Parallel Development

Gitora can be used in collaboration mode in which all PL/SQL developers work in the same Oracle Schema(s). In this case Gitora supports a check-in check-out mechanism. This check in/out mechanism is not tool dependent. It works both with TOAD and PL/SQL Developer (or any other tool for that matter).

More importantly, Gitora can also be used in parallel development mode in which every PL/SQL developer works in her own schema(s). In this way of working, (which is exactly how Java, .NET, JavaScript developers etc.. are working) each developer has her own copy of each PL/SQL code unit in the code base and is free to make changes to them related to the task she has at hand. In parallel mode, no developer blocks the other because she is the only one who checks out the PL/SQL code units in her own schema(s). This improves development times significantly because more than one developer can work on the same logical PL/SQL code unit at the same time.

The software development team establishes a workflow to merge the changes of each developer and propagate these changes to the master code base. Gitora (via Git) also helps with this process with automated merging of changes. In the event of a conflict (where Git cannot figure out how to merge changes done by two developers to the same code unit) Gitora asks the user to resolve the conflict. Gitora creates multiple versions of the PL/SQL code unit in question and helps the developers to resolve the issue. (Please see Introduction to Gitora, Git for PL/SQL developers for more information on this topic)

Best to our knowledge, Gitora is the only tool that is specifically designed to be used for parallel development with PL/SQL. We think parallel development is where a software team starts to get a lot of value from using a version control system. This helps establishing a formal workflow of incorporating changes to the master code base and to production.

Other benefits of Gitora

  • Gitora is free to use. Gitora offers a lot of functionality out of the box and if this is good enough for you, you already have what you need for free. Enjoy! 🙂
  • Gitora integrates to your software development lifecycle. We cannot overstate how important this is. Gitora is not something you do on the side and it does not have back doors where you can circumvent version control. It becomes an essential part of your daily workflow. There are version control tools that people use on the side by copying and pasting scripts. This is a very error prone process because it requires developers to “remember” to do version control. Some version control tools only work within a specific tool (such as TOAD) and do not prevent the developer from opening another tool (such as PL/SQL developer) and modify code without using proper version control mechanisms.

We can also help you in other ways:

  • Sometimes our customers with large teams and many policies and procedures, want us to extend or modify Gitora for them. We offer affordable professional support services for this purpose. Basically, think of Gitora something you start with for free. If you want features in Gitora to make you work even more efficiently, we can help you with that. (For example, Gitora works with Git but it is flexible enough to work with other version control systems. So if you’d prefer to use another version control system, it would not be too difficult for us to implement this.)
  • We also help organizations to improve their software development lifecycle. We can help you integrate version control into your daily workflow. We can help you design a workflow that fits to your organization’s culture, policies and procedures. More importantly, we can enforce these policies and procedures in Gitora so that there are no backdoors and following procedures and policies becomes a natural part of the development lifecycle. We can analyze and suggest optimizations to your development lifecycle, help align incentives of various groups in the IT department (analysts, developers, testers etc…) and be the driver of this change in the organization.

For more information about Gitora, we recommend you to visit the following links:

Gitora Webinar Recording (and Slides)

Six Common Question About Gitora

What is the Difference between Gitora and SQL Developer’s Git Interface