Plugin source location: <serge_root>/lib/Serge/Sync/Plugin/VCS/mercurial.pm
This plugin provides integration with Mercurial-based source code repositories. On pull
sync step, Serge will update its local checkout from your Mercurial server. Respectively, on push
sync step, Serge will push all the updated files back to the remote repository.
Communication between Serge and Mercurial is performed by the means of running hg
command-line tool. This means that Mercurial must be installed on the same machine as Serge and have authentication properly configured.
Each configuration file in Serge represents a single translation project, and maps to one or more remote source code repositories (in case of multiple repositories, they all need to be under the same version control and have the same committer configured, since VCS plugin name and committer username are shared within a configuration file). The typical workflow is this:
/var/serge/data/
my_project.serge
) for your translation project so that it stores local repository files under /var/serge/data/my_project/
(see sync → vcs → data → local_path
parameter)serge pull --initialize my_project.serge
the first time to do the initial checkout; check that /var/serge/data/my_project/
folder contains proper filesserge push my_project.serge --message="test"
; check that your commit went through to the remote serverLater you will run serge sync
continuously against this configuration file, which will perform the two-way sync between Serge and Mercurial among other synchronization/localization steps. See Localization Cycle for more information.