File: gettext.info, Node: Translations under Version Control?, Next: autopoint Invocation, Prev: PO Template File under Version Control??, Up: Version Control Issues 14.7.4 Put the PO Files under Version Control or not? ----------------------------------------------------- The PO files produced by translators are source files. Whether they are put under version control, is related to how the ‘fetch-po’ script operates. • In packages whose translators commit their PO files directly into the version control of the package, or where a translations project's daemon does this automatically on behalf of the translators, they are in version control. This is the case where the ‘fetch-po’ script does not do anything. • In packages where the translations are collected by a translation project, the maintainer has the choice: • He may want to rely on this translation project only. This means: • He will *not* put the PO files under version control. • Instead he will list them in the ‘.gitignore’ file. • In the script that fetches auxiliary sources from other places in the internet, typically called ‘autopull.sh’ or ‘bootstrap --pull’, he will have an invocation (cd po && ./fetch-po) • The ‘fetch-po’ script will have a ‘po-fetch’ invocation *without* the ‘--git’ option. The net effect is that the developers will access the translation project's site regularly, namely each time they execute the ‘autopull.sh’ script. • Or he may want to use the package's version control as a "cache" for the PO files from the translation project. This means: • He will put the PO files under version control. • The ‘autopull.sh’ or ‘bootstrap --pull’ script is not modified. • The ‘fetch-po’ script will have a ‘po-fetch’ invocation *with* the ‘--git’ option. • Before making a release, the maintainer will run (cd po && ./fetch-po) and commit the changed or added or removed files in the ‘po/’ directory. The net effect is that only the maintainer will access the translation project's site, and only when making a release. In all other situations, the developers will be using the PO files from the package's version control.
