Branching a document in git

From FedoraProject

Jump to: navigation, search

The Fedora Documentation Project maintains the XML source for most Fedora documentation in git repositories on Generally, each repo contains a "master" branch, in which corrections and updates are made, and a set of branches for various Fedora releases. The version of the XML in these branches is stable, and forms the basis for translations by the Fedora Localization Project. We do not generally make incremental changes to the XML in stable branches because to do so would break translations.

Sometime after the release of the Alpha version of a new version of Fedora, we create a new branch for that version, using the updated XML from the master branch and the most recent set of translations from the branch of a previous version of the book.

These instructions are for the leads (maintainers) of formal Fedora documentation.

Once you are sure that the documentation correctly describes the new version of Fedora and that it builds correctly on your system:


In the root directory of the checked-out document (the one that contains the publican.cfg file):

0.1 Change into the master branch

git checkout master

0.2 Make sure that your master branch is up to date:

git pull

0.3 Make sure that you have a local copy of the branch with the most recent translations:

git branch --track f13 origin/f13

0.4 Make sure that your Publican installation is the latest version

sudo yum update publican-fedora publican
Because of bug fixes, please make sure you are running the latest versions of Publican and Publican-fedora. The current versions are publican-2.5-1 and publican-fedora-2.0-0.


1. Create a new local branch. In the master branch, run:

git branch f16

2. Change into the new local branch:

git checkout f16

3. Push the new branch into the remote repository:

git push origin f16

4. switch to the branch with the most recent translations:

git checkout f13

5. update the document POT files:

publican update_pot

6. pull the latest translations from Transifex (if the guide is already in Transifex):

tx pull -af

7. update the PO files for each language:

publican update_po --langs=all

8. check your changes into the repo:

git add .
git commit -m"branch for f16"
git push

9. If the document has never been set up to use for translations, follow the steps described in Setting up a document with Transifex to make your document available to translators.