我想將我的服務器上的git存儲庫同步到本地網絡服務器。我讀過的所有指南導致了不同的錯誤,現在我真的很絕望。我很抱歉,如果您已經閱讀這個問題上百倍,但我還是不明白這一點-.-git pull通過crontab自動執行
- 與SUSE Linux的工作,並通過SSH用膩子conneting它
- 的webprojekt哪裏需要同步的文件夾上:/ SRV /網絡/ htdocs中/ MY_PROJECT
- Git倉庫,在這裏:/ SRV /混帳/庫/ MY_PROJECT
- 我有用戶: 「根」 和 「cron的」
cron應該每分鐘或更少的時間做這個命令h用戶「cron」:
cd /srv/www/htdocs/my_project
git pull origin
(git fetch) <-- not mandatory
當我手動輸入這些命令時,這些命令正常工作。 (除了每次都必須輸入用戶密碼外)
In this question I got some informations, but I always get an error when I try them myself。
我的cron應該是這樣的,那麼:
* * * * * su -s /bin/sh cron -c 'cd /srv/www/htdocs/my_project && /usr/local/bin/git pull origin master'
我執行該對我的膩子,其回答我:-bash:斌:找不到命令
我的下一個嘗試是:
crontab * * * * * su -s /bin/sh cron -c 'cd /srv/www/htdocs/my_project && /usr/local/bin/git pull origin master'
錯誤:crontab中:無效選項 - 'S'
錯誤:crontab中:用法錯誤:無法識別的選項
我嘗試了很多更多的組合(除蘇-s或刪除-c等),但它從來沒有工作,因爲我想-.-不該」 t我在PuTTY上執行此命令?
相關知識:我是一名Linux和GIT初學者,昨天開始使用它,實際上設法做到現在。 (^。^)所以我會很高興有一個可以理解的解釋,我做錯了什麼,我必須做什麼。這很混亂。
cronjob不是執行此操作的最佳方法。您的git存儲庫在哪裏託管? – Chronial
存儲庫不在某處。在服務器上,我有apache,gitolite和git存儲庫。如果這是你的想法,我們不使用github.com。在我們將項目上傳到活動服務器之前,我想使用thiy系統進行內部測試。 – lastria