Releasing output from DITA maps via Git and the Oxygen Publishing Engine
Post here questions and problems related to editing and publishing DITA content.
-
- Posts: 114
- Joined: Wed Mar 17, 2010 1:04 pm
Releasing output from DITA maps via Git and the Oxygen Publishing Engine
Hello everyone,
my team is currently going through major organizational changes and also has to meet some new requirements.
- We are currently using Subversion as our version control system, but are planning to migrate to GitLab within the next months. For the most part, my team uses only the Subversion trunk, there are no branches.
- We will also stop releasing the documentation as part of the software and publish it on a web server instead. In this case, we will have to convert and
publish a document (i.e., a bookmap) as soon as it is ready. Currently, our Oxygen projects include sets of documents related to a product group.
- My current idea for the future is to work on a GitLab main branch by default and to add finished bookmaps to release branches. The content of release branches is then used for publication using the Publishing Engine.
Is it possible to add an entire bookmap including its referenced content from the local file system to such a release branch?
Kind regards
Susanne
my team is currently going through major organizational changes and also has to meet some new requirements.
- We are currently using Subversion as our version control system, but are planning to migrate to GitLab within the next months. For the most part, my team uses only the Subversion trunk, there are no branches.
- We will also stop releasing the documentation as part of the software and publish it on a web server instead. In this case, we will have to convert and
publish a document (i.e., a bookmap) as soon as it is ready. Currently, our Oxygen projects include sets of documents related to a product group.
- My current idea for the future is to work on a GitLab main branch by default and to add finished bookmaps to release branches. The content of release branches is then used for publication using the Publishing Engine.
Is it possible to add an entire bookmap including its referenced content from the local file system to such a release branch?
Kind regards
Susanne
-
- Posts: 922
- Joined: Thu May 02, 2019 2:32 pm
Re: Releasing output from DITA maps via Git and the Oxygen Publishing Engine
Post by chrispitude »
Hi Susanne,
Oxygen has a Git add-on that integrates a Git client directly into the Oxygen environment. It provides many features to make Git more accessible and useful to writers. You can find more information here:
Home > Add-ons > Collaboration > Git Client Add-on
You can certainly commit any DITA content you like to a Git branch.
Our software has a documentation release every three months. Initially, we did what you described - we all worked on content in a "main" branch, then branched that to a release branch every three months. For example, here are writers A, B, and C, using that branching model:
but we ran into issues when one product released late and another product released early, because then we had to force all the early writers to wait until every late writer completed, in order to create the branch with the correct content.
To resolve this, we now have writers work directly in release branches. Every Wednesday, I run a script that performs a cascaded series of merges from earlier branches to later branches (no merge is performed if there are no changes to propagate):
This branching model works well for us. Writers work on content in whatever release branch represents that feature's intended release. They can work on a feature months in advance. They can make retroactive corrections to already-published releases and republish, and the fix is propagated forward automatically.
Of course there are conflicts from time to time during the propagation merges, but such is the nature of such multi-release work. And it gives them a reason to keep me around.
There is some related discussion here:
Oxygen XML Editor DITA (Editing and Publishing DITA Content) > Git Branch Manager
Oxygen has a Git add-on that integrates a Git client directly into the Oxygen environment. It provides many features to make Git more accessible and useful to writers. You can find more information here:
Home > Add-ons > Collaboration > Git Client Add-on
You can certainly commit any DITA content you like to a Git branch.
Our software has a documentation release every three months. Initially, we did what you described - we all worked on content in a "main" branch, then branched that to a release branch every three months. For example, here are writers A, B, and C, using that branching model:
image.png
but we ran into issues when one product released late and another product released early, because then we had to force all the early writers to wait until every late writer completed, in order to create the branch with the correct content.
To resolve this, we now have writers work directly in release branches. Every Wednesday, I run a script that performs a cascaded series of merges from earlier branches to later branches (no merge is performed if there are no changes to propagate):
image.png
This branching model works well for us. Writers work on content in whatever release branch represents that feature's intended release. They can work on a feature months in advance. They can make retroactive corrections to already-published releases and republish, and the fix is propagated forward automatically.
Of course there are conflicts from time to time during the propagation merges, but such is the nature of such multi-release work. And it gives them a reason to keep me around.

There is some related discussion here:
Oxygen XML Editor DITA (Editing and Publishing DITA Content) > Git Branch Manager
You do not have the required permissions to view the files attached to this post.
Last edited by chrispitude on Fri Nov 18, 2022 2:12 pm, edited 2 times in total.
-
- Posts: 1016
- Joined: Wed Nov 16, 2005 11:11 am
Re: Releasing output from DITA maps via Git and the Oxygen Publishing Engine
Post by alex_jitianu »
Hi Susanne,
Chris already gave you very useful information about Git workflows so I'll just answer this question:
Best regards,
Alex
Chris already gave you very useful information about Git workflows so I'll just answer this question:
Yes, it's possible. The Git Client has a Branch Manager view in which you can create release branches.Is it possible to add an entire bookmap including its referenced content from the local file system to such a release branch?
Best regards,
Alex
Return to “DITA (Editing and Publishing DITA Content)”
Jump to
- Oxygen XML Editor/Author/Developer
- ↳ Feature Request
- ↳ Common Problems
- ↳ DITA (Editing and Publishing DITA Content)
- ↳ SDK-API, Frameworks - Document Types
- ↳ DocBook
- ↳ TEI
- ↳ XHTML
- ↳ Other Issues
- Oxygen XML Web Author
- ↳ Feature Request
- ↳ Common Problems
- Oxygen Content Fusion
- ↳ Feature Request
- ↳ Common Problems
- Oxygen JSON Editor
- ↳ Feature Request
- ↳ Common Problems
- Oxygen PDF Chemistry
- ↳ Feature Request
- ↳ Common Problems
- Oxygen Feedback
- ↳ Feature Request
- ↳ Common Problems
- Oxygen XML WebHelp
- ↳ Feature Request
- ↳ Common Problems
- XML
- ↳ General XML Questions
- ↳ XSLT and FOP
- ↳ XML Schemas
- ↳ XQuery
- NVDL
- ↳ General NVDL Issues
- ↳ oNVDL Related Issues
- XML Services Market
- ↳ Offer a Service