10 lines
1.2 KiB
Markdown
10 lines
1.2 KiB
Markdown
Git Repository Synchronizer v1 is a system that provides individuals the ability to archive a git repository without having to worry about the archive being sabotaged.
|
|
|
|
GRS creates snapshots when it detects the source repository has been tampered with.
|
|
|
|
Tampering is detected when the source git repository reduces in size by a certain threshold. The threshold can be set by modifying `thresholdFactor` in `grs.sh`. Setting `thresholdFactor=5` would mean that the source git repository would have to drop by 20% for it to be considered as tampering. The way 20% is derived from a `thresholdFactor` of `5` is by dividing `1/thresholdFactor` which in the case of `1/5` would equal `0.2` which is the ratio for 20%.
|
|
|
|
The execution cycle can be set by configuring `timer.service` using systemd conventions. The settings default to executing every ten minutes on the hour.
|
|
|
|
NOTE:
|
|
The reasoning behind the usage of "v1" is due to it being possible to develop a better solution using a C++ compiler that reduces the strain on the storage medium and cuts the storage footprint in half by using system memory as a temporary cache to compare the pulled git changes instead of having the previous snapshot always in storage. |