Project is now launched for Beta testing ... Don't use on Live Databases yet! (Unless you know what is happening)

This project source code is available on Github under camac/dora

 

Post feedback here or get me on twitter @gregorbyte

If you use Git for your Domino Source Control, then Dora may be of assistance to you!*

Dora is a helper script which assists you in setting up and configure your NSF Git Repositories for common issues that arise when trying to do proper Source Control with NSF development.

Dora's primary purpose is to set up your NSF repository to avoid the dreaded lastaccessed View modification. It also includes a feature to automatically update a version number in a Custom Control

* only for real Git, not EGit unfortunately. EGit is a java re-write of Git and sadly the EGit project did not completely replicate all features of Git, leaving out one of the necessary features! Someone could possibly update EGit to include it though...

Why Use Dora?

Dora's main purpose, is to help set up DXL Metadata filtering for your Git Repository.

DXL Metadata filtering can help if you develop NSF's under Source Control using Git.

If you are using Source Control with Domino Designer, then you’ll know about the On-Disk Project. The On-Disk Project is where the Design Elements of the NSF are synchronised to files in your computer’s filesystem, so that they can be managed  by a Source Control Management program such as Git or Mercurial.

The problem is that when Domino Designer writes the Design Element files to the filesystem, it gives us more information than we need. When you are doing proper source control, you want to focus only on the real changes to your application, and not trivial information such as metadata. This extra information can cause unnecessary commit information that makes it harder to see what the actual change history of the application is.

More concerning is how it makes branching and merging more trouble than it’s worth, causing a much higher rate of merge conflicts. The benefits of branching and merging should be one of the reasons why you want to move to Source Control in the first place. DXL Metadata filtering reduces the occurance of merge conflicts by ignoring changes that have no impact on the function of the application.

The easiest way to show how the DXL Metadata Filter works is through a demonstration of it in use.