On the client, we use Hippo to 'version/backup' configuration files into a Git Repository. With hippo, we can then put a copy onto another machine as a precaution (i.e. we want a current versioned copy of the configuration on another machine for the event when this client dies and we want to rebuild it.)

Most Hippo commands are identical to their Git equivalents, and Hippo needs root privileges to perform the majority of its functions (and is thus often executed as root or with sudo.)

Basic preparations of Hippo are:

After which the client is ready for work:

Initialise a new host repository

[Ref: git-init ]

After installing Hippo onto a host, we create the local repository for the configuration files using hippo init

$ sudo hippo init

By default, the host-wide git repository lives in /var/hippo/.git. Metadata is tracked in /var/hippo/manifest.

We now have an empty host configuration repository. There are no configuration files in the repository (not even /etc/passwd.)

Configure git

[Ref: git-config ]

It is a good idea, at the beginning, to configure Git, with attention to at least telling git (and as a by-product, hippo) who you are so this can be detailed in the version message log.

$ git config --global user.email aldo@example.com
$ git config --global user.name Aldo Cortesi