2012-07-25 5 views
5

Ich habe eine Website in ein Jekyll/GitHub Pages-Setup verschoben und habe einen iOS-basierten Markdown-Editor, der mit Dropbox synchronisiert wird. Derzeit untersuche ich Möglichkeiten, um die Lücke zu schließen und Dateien, die unterwegs erstellt werden, automatisch zu committen und an das GitHub-Repository zu senden, aber nicht sicher, wo ich anfangen soll. Ist so etwas möglich?Kann Commits/Pushs zu Github automatisiert werden?

(ich erlebt bin nicht in Verwendung Automator auf OSX, aber es scheint, wie es könnte eine Option sein, obwohl ich nicht garantieren kann, dass eine Maschine die ganze Zeit wach sein wird)

Antwort

6

cron verwenden sollte es tun . Beachten Sie, dass Sie für git eine schlüsselbasierte Authentifizierung einrichten müssen, damit Sie beim Push-Vorgang kein Passwort erhalten.

(Beachten Sie, dass ich diese Tools in Linux verwendet haben, aber sie sollten auch in OS X arbeiten.)

Erstellen Sie Ihr Skript irgendwo

#!/bin/sh 
cd /path/to/git/repo 
git commit -a -m "Automated commit message." # commit all changes 
git push 

die schript Stellen ausführbare
chmod + x script.sh

Führen Sie crontab -e aus, um Ihre Cron-Datei zu bearbeiten, und fügen Sie 0 * * * * /path/to/script.sh hinzu, um das Skript einmal pro Stunde auszuführen.

Dies setzt auch voraus, dass dies der einzige Committer ist. Wenn jemand anders von woanders zum Repo schiebt, müssen Sie diese Änderungen mit diesem Klon zusammenführen, bevor das Skript erneut erfolgreich ausgeführt wird.

Sie könnten auch Flashbake auschecken!

+0

Vielleicht bin ich seltsam, aber ich würde nicht chmod das Skript, sondern stattdessen /bin/sh /path/to/script.sh >> /path/to/log.log 2> & 1 auch Sie Möglicherweise muss root einen SSH-Schlüssel geben. – Merovex

Verwandte Themen