Я использую мерзавца в целях сделать историческую расшифровку стенограммы изменений сделанной к моему проекту. Я понимаю, что это не идеальное использование, но это - шаблон использования, который я выбрал по различным причинам, в которые я не войду ради краткости.
Как я создал бы задание крона, которое будет передавать изменения в репозитории каждый день или неделя?
Я использую последнюю версию мерзавца на Ubuntu 10.10.
0 20 * * 0 /path_to_script
Это выполнит указанную команду (замена /path_to_script'
) в 20:00 по местному времени каждое воскресенье. Синтаксис для заданий крона довольно прост, и существует гладкий инструмент, который поможет Вам создать их, не помня положений кода.
В этом случае команда должна быть сценарием, который выполняет фиксацию для Вас. Я думаю, что было бы самым легким в Вашем случае записать быстрый сценарий оболочки, чтобы измениться на каталог клона и затем выполнить фиксацию. Создайте файл в ~/commit.sh
и помещенный это в него (замена /location/of/clone
, конечно)
#!/bin/sh
cd /location/of/clone
git-commit -m "commit message, to avoid being prompted interactively"
Затем chmod +x ~/commit.sh
чтобы сделать это исполняемым файлом и иметь прогон задания крона что (относящийся к нему, он - полный путь вместо использования ~
).
Выполненный crontab -e
отредактировать Вашего пользователя cronjob и вставить эту строку:
0 20 * * 0 (cd /path/to/myproject && git add . && git commit -m "Automatic Commit" && git push)
Конечно, необходимо будет установить МЕРЗАВЦА repo включая рабочий удаленный репозиторий, но это не в пределах этого вопроса.