Сценарий по расписанию забирает новые файлы из S3 и складывает их копии в S3. Резервная копия живёт сама.
Перенос данных из GitHub в S3 делается готовым сценарием: он сам замечает новое и переносит его.
Эту интеграцию GitHub и S3 можно запустить в Scriptera: опишите задачу словами — сценарий соберут, запустят и будут следить, чтобы он работал.