Home

Awesome

Go Report Card Binary-release GitHub Maintainability

<h1><a href="https://github.com/aceberg/git-syr"> <img src="https://raw.githubusercontent.com/aceberg/git-syr/main/assets/logo.png" width="20" /> </a>git-syr</h1> <br/>

Sync Your Repos - pull or push your git repos regularly. For dotfiles backups or note taking in git repo

screenshot

CLI and GUI

There are two packages available: git-syr and git-syr-cli. For command line only installation you can use git-syr-cli, just replace the name in the instructions below. Though git-syr is capable of both CLI and GUI modes.

Installation

1. From .deb repository (recommended)

curl -s --compressed "https://aceberg.github.io/ppa/KEY.gpg" | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/aceberg.gpg
sudo curl -s --compressed -o /etc/apt/sources.list.d/aceberg.list "https://aceberg.github.io/ppa/aceberg.list"
sudo apt update && sudo apt install git-syr

2. From .deb file

Download latest release, install with your package maneger

3. From .tar.gz

Download latest release, then

tar xvzf git-syr-*.tar.gz
cd git-syr
sudo ./install.sh

Usage

1. Systemd as user (recommended)

Enable and start service, replace MYUSER with your username

sudo systemctl enable git-syr@MYUSER.service
sudo systemctl start git-syr@MYUSER.service

Web GUI will be available at http://0.0.0.0:8844

2. Systemd as root

Enable and start service

sudo systemctl enable git-syr.service
sudo systemctl start git-syr.service

Web GUI will be available at http://0.0.0.0:8844

3. From command line

Just run git-syr. Be mindful of the config files paths listed in options section.

Config

1. With web GUI

You can do all configuration through web interface. Config files paths are listed in options section below.

2. CLI

repos.yaml example:

- name: Dotfiles
  path: /home/data/repo/dotfiles
  timeout: 4h
  pull: "no"
  push: "yes"

- name: MyNotes
  path: /home/data/repo/MyNotes
  timeout: 1m
  pull: "yes"
  push: "yes"

config.yaml example:

color: light
host: 0.0.0.0
nodepath: ""
port: "8844"
theme: cosmo

Options

1. git-syr

KeyDescriptionDefaultSystemd (user)Systemd (root)
-cPath to GUI config file./config.yaml$HOME/.config/git-syr/config.yaml/etc/git-syr/config.yaml
-lPath to log file./git-syr.log$HOME/.config/git-syr/git-syr.log/var/log/git-syr.log
-nPath to local node modules
-rPath to repos yaml file./repos.yaml$HOME/.config/git-syr/repos.yaml/etc/git-syr/repos.yaml
-wLaunch without web guifalse

2. git-syr-cli

KeyDescriptionDefaultSystemd (user)Systemd (root)
-lPath to log file"" (No log file)$HOME/.config/git-syr/git-syr.log/var/log/git-syr.log
-rPath to repos yaml file./repos.yaml$HOME/.config/git-syr/repos.yaml/etc/git-syr/repos.yaml

To run git-syr without log file pass empty string -l ""

Thanks