Godzinowy push GIT

9

Czy mogę zautomatyzować wypychanie Git co godzinę za pomocą skryptu wsadowego.

Zazwyczaj wpisuje to:

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

Jak mogę to zautomatyzować?

ir-g
źródło

Odpowiedzi:

8

Tak, możesz to zrobić za pomocą crona. Aby dodać zadanie do crona, musisz uruchomić

crontab -e

Składnię należy podać w komentarzu do ostatniego wiersza, ale i tak ją wyjaśnię:

mh dom mon dow polecenie W kolejności: są to minuty, godziny, daty miesiąca, miesiące, dni tygodnia i polecenia, które należy uruchomić w tej chwili.

Aby uruchomić go co godzinę, chciałbyś:

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

Co oznacza uruchomienie skryptu w 0 minucie każdej godziny każdego dnia itp.

Gdzie /home/username/bin/git-backup-script.sh to skrypt powłoki, który robi wszystko, o czym wspomniałeś (choć nie zapomnij o cd do odpowiedniego katalogu w nim!)

Scott
źródło
Zmodyfikowany skrypt w celu rozwiązania problemu. Wymienione w pytaniu, dzięki za pomoc Crona!
ir-g
Och, kochanie, nie wiedziałem, że możesz tak włączyć Github z Git - fajnie! :)
Scott
Ta metoda wykorzystuje stosunkowo nieznane parametry nazwy użytkownika i hasła http, które nie są używane przez wiele witryn. EG: username:[email protected]
ir-g
1
Tak, wiedziałem, że możesz zrobić takie uwierzytelnianie HTTP, po prostu nie przyszło mi do głowy, że z jakiegoś powodu możesz go użyć do Github. Fajne!
Scott,
To działa tak samo dla większości internetowych usług git korzystających z HTTP.
ir-g