git pull automatisch per crontab

Möchte ich synchronisieren mein git repository auf meinem server auf meinen lokalen webserver. Alle guides die ich gelesen verursacht verschiedene Fehler und jetzt bin ich wirklich verzweifelt. Tut mir Leid, wenn Sie bereits Lesen Sie diese Frage hundert mal, aber ich noch nicht bekommen -.-

  • Arbeiten mit Linux SuSE und conneting auf es mit PuTTY über SSH
  • das webprojekt, wo ich die Synchronisierung für den Ordner: /srv/www/htdocs/my_project
  • das git-repository ist hier: /srv/git/repositories/my_project
  • Ich habe den Benutzer: "root" und "cron"

Den cron sollte diese Befehle in jeder minute oder weniger mit dem Benutzer "cron":

cd /srv/www/htdocs/my_project
git pull origin
(git fetch) <-- not mandatory

Diese Befehle funktionieren, wenn ich die Eingabe manuell erfolgen. (außer ich habe zu geben Sie die Benutzer-Passwort jedes mal)

In dieser Frage habe ich einige Informationen, aber ich bekomme immer eine Fehlermeldung, wenn ich versuche, Sie selbst.

Mein cron sollte dann so Aussehen:

* * * * * su -s /bin/sh cron -c 'cd /srv/www/htdocs/my_project && /usr/local/bin/git pull origin master' 

Ich ausgeführt diese auf meinem Kitt, der mir antwortete: -bash: bin: Befehl nicht gefunden

Mein Nächster Versuch war:

crontab * * * * * su -s /bin/sh cron -c 'cd /srv/www/htdocs/my_project && /usr/local/bin/git pull origin master'

Fehler: crontab: invalid option -- 's'

Fehler: crontab: Syntax error: unrecognized option

Habe ich versucht, eine Menge mehr Kombinationen (entfernen des su -s oder entfernen der Option-c etc.) aber es funktionierte nie so wie ich wollte -.- Sollte ich nicht tun, diesen Befehl über PuTTY?

Gut zu wissen: ich bin linux und GIT-Anfänger, angefangen mit gestern und es tatsächlich geschafft, eine Menge zu tun bis jetzt. (^.^) Also ich hätte gerne eine verständliche Erklärung, was ich falsch mache und was ich zu tun habe. Es ist verwirrend.

Ein cronjob ist nicht der beste Weg, dies zu tun. Wo ist dein git-repository gehostet?
das repository ist nicht hosted irgendwo. Auf dem server habe ich apache, gitolite und dem git-repository. Wir nicht nutzen github.com wenn das Ihre Idee war. Ich will thiy system für interne Tests, bevor wir Sie hochladen, die Projekte auf den live-server.

InformationsquelleAutor lastria | 2012-11-28

Schreibe einen Kommentar