--- hastr: true layout: project title: git-etc short: git-etc tags: git, python, qt, linux, daemon, system hasgui: true hasdocs: false developers: - Evgeniy Alekseev license: GPLv3 links: - Archlinux AUR package ---
Simple daemon that automatically creates git repository in the given directory and creates commit at the specified time interval.
{% highlight bash %} $ git-etc --help Simple daemon written on BASH for monitoring changes in files Usage: git-etc [ -c | --config /etc/git-etc.conf ] [ -h | --help ] [ -v | --version ] Parametrs: -c --config - path to configuration file -h --help - show this help and exit -v --version - show version and exit See "man 1 git-etc" for more details {% endhighlight %} {% highlight bash %} $ ctrlconf --help GUI for git-etc daemon Usage: ctrlconf [ --default ] [ -h | --help ] [ -v | --version ] Additional parametrs: --default - create default configuration file -h --help - show this help and exit -v --version - show version and exit See "man 1 ctrlconf" for more details {% endhighlight %}/
you must run it as root, e.g.:
{% highlight bash %}
sudo ./install.sh
{% endhighlight %}
If no path is specified it will be installed to /
by default.I want note that all were tested on latest version of dependencies.
If you want to start the daemon into /etc
just run
If you want to enable daemon autoload run
{% highlight bash %} systemctl enable git-etc {% endhighlight %}But you may change path to configuration file or change parameters. To do it just copy (recommended) the source configuration file to new path
{% highlight bash %} cp /etc/git-etc.conf /new/path/to/file/git-etc.conf {% endhighlight %}and edit it. Then copy the source service file to /etc
:
Replace following string in the file:
{% highlight bash %} ExecStart=/usr/bin/git-etc -c /etc/git-etc.conf {% endhighlight %}to
{% highlight bash %} ExecStart=/usr/bin/git-etc -c /new/path/to/file/git-etc.conf {% endhighlight %}All settings are stored in /etc/git-etc.conf
. After edit them you must restart daemon
DIRECTORY | Full path to working directory with observed files. Default is /etc . |
---|---|
TIMESLEEP | Time interval between updates, hours. It must be integer and >= 1. Default is 12 . |
IGNORELIST | List of files that will not be observed. Separator is ";;". May be empty. |
FORALL | 1 will enable access for normal user. Default is 1 . |
Control Config (ctrlconf
) is GUI for git-etc
daemon written on Python2/PyQt4
. This application allows you to view a list of commits and changes in files recorded in commit messages. Also, this application allows you to roll back to a specific commit all files (git reset --hard
) or individual files (git diff && git apply
). And you may merge old and new configuration files (used two branches repository - master and experimental). The application may need root privileges. Make sure that sudo
package is installed.
Just run the application and open the settings window from menu!
(Screenshots in Russian, but GUI has English translation.)