Часовой GIT Push

9

Могу ли я автоматизировать Git push каждый час с помощью пакетного сценария.

Я обычно набираю это:

git add *
git commit -m "latest update"
git push https://username:password@github.com/username/repository.git master

Как я могу автоматизировать это?

ИК-г
источник

Ответы:

8

Да, вы можете сделать это с помощью cron. Чтобы добавить задачу в cron, вам нужно запустить

crontab -e

Синтаксис должен быть указан в комментарии к последней строке, но я все равно объясню:

mh dom mon dow команда По порядку: это минута, час, дата месяца, месяц, день недели и команда, запускаемая в это время.

Таким образом, чтобы запустить его каждый час, вы хотели бы:

0 * * * * /home/username/bin/git-backup-script.sh

Что означает запускать скрипт на 0-й минуте каждого часа каждого дня и т. Д.

Где /home/username/bin/git-backup-script.sh - это сценарий оболочки, который делает все, что вы упомянули (хотя не забудьте перейти в соответствующий каталог в нем!)

Скотт
источник
Отредактированный скрипт для решения проблемы. Внесенный в список вопрос, спасибо за помощь Cron!
ir-g
О, милая, я не знала, что ты можешь вставить Github auth таким образом с Git - хорошо! :)
Скотт
Этот метод использует относительно неизвестные параметры имени пользователя и пароля http, которые не используются многими сайтами. ЭГ: username:password@example.com
ИК-г
1
Да, я знал, что вы можете сделать HTTP-аутентификацию таким образом, мне просто не пришло в голову, что вы можете использовать его для Github по какой-то причине. Круто!
Скотт
Это работает так же для большинства онлайн-сервисов git, использующих HTTP.
ir-g