1.1 --- a/vcs-backup.sh Sun Apr 21 21:49:35 2019 +0200
1.2 +++ b/vcs-backup.sh Sun Apr 21 21:49:50 2019 +0200
1.3 @@ -17,6 +17,21 @@
1.4 # along with this program. If not, see <http://www.gnu.org/licenses/>.
1.5
1.6
1.7 +# VCS Backup is a configuration for setting up a version control system mirrors.
1.8 +# Currently Mercurial (Hg) and Git are supported.
1.9 +# Features:
1.10 +# - mirrors remote repositories
1.11 +# - creates Btrfs subvolume for each repository
1.12 +# - does periodic pull to keep mirrors up to date
1.13 +# - does periodic Btrfs snapshot to keep history (git push --force done on the remote repository will lead to modifications or deletions in our current mirror, but previous versions will be kept in the snapshots)
1.14 +# - provides web interface for remote clonning of our mirrors (see systemd and etc folders)
1.15 +# - can be controlled over SSH by a sane person / owner of the system
1.16 +# - provides reports in the recfile format (to be processed using GNU Recutils or Relational pipes):
1.17 +# - list of repositories/mirrors
1.18 +# - results of pull operations
1.19 +
1.20 +
1.21 +# This is an asynchronous message-driven shell script that runs distributed across two machines and four user accounts. You have been warned :-)
1.22 # Server-side configuration:
1.23 VCS_BACKUP_DATA_DIR="/mnt/data";
1.24 VCS_BACKUP_CURRENT_DIR="$VCS_BACKUP_DATA_DIR/current";