我想将我的服务器上的git存储库同步到我的本地网络服务器。我读到的所有指南都引起了不同的错误,现在我真的很绝望。如果你已经读了这个问题一百次,我很抱歉,但我仍然没有得到它 - .-
cron应该每分钟或更少地使用用户“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'
我在我的PuTTY上执行了这个操作,它回复了我: -bash:bin:命令未找到
我的下一次尝试是:
crontab * * * * * su -s /bin/sh cron -c 'cd /srv/www/htdocs/my_project && /usr/local/bin/git pull origin master'
错误:crontab:无效选项 - 's'
错误:crontab:使用错误:无法识别的选项
我尝试了更多组合(删除su -s或删除-c等)但它从未按照我的意愿工作-.-我不应该在PuTTY上执行此命令吗?
很高兴知道:我是一名Linux和GIT初学者,昨天开始使用它并且实际上已经设法做了很多。 ( ^。^ )所以我很乐意有一个可以理解的解释,我做错了什么,我要做什么。这令人困惑。
答案 0 :(得分:2)
实现您想要的最简单的方法(让git存储库自动部署在您的服务器上)是将git存储库放在您的Web服务器中,并使用钩子进行推送检查。在这个答案中描述了如何做到这一点:Deploy a project using Git push