我是一名初级开发人员,希望在开始我的个人网站之前获得出色的工作流程设置:kevinbmccall.com
该网站安装了WordPress,由SiteGround托管。
我喜欢Sublime Text 3编辑器,我希望模仿此处描述的工作流程:http://joshuaiz.com/words/the-ultimate-workflow/
我已经在通过终端学习Git并通过本地项目文件夹设置了GitHub仓库。因此我并没有真正关注约书亚,可能是导致我陷入困境的原因,但我想我已经到了SSH部分。
这是我到目前为止所做的:
问题:"我希望服务器与我的github repo同步,这样每次推送到github时都可以轻松部署到我的实时网站"
以下是我现在可以做的事情:
我的想法:
我认为我的问题与写入服务器有关,也可能是通过Siteground进行SSH设置。我生成了一个密钥,但从未真正使用过它,所有来自siteground的在线资料都指向了c-panel中的SG-Git工具。这需要一个更昂贵的月度计划,我只是一个开始尝试建立个人网站的开发人员。我确信无需升级即可完成部署。
感谢任何回复者。我的目标是尽可能多地学习,所以我对解释比解决方案更感兴趣。
答案 0 :(得分:0)
在我看来,也许你需要GitHub Webhooks。
这是demo
// Init vars
$LOCAL_ROOT = "/var/www/my_new_site";
$LOCAL_REPO_NAME = "public_html";
$LOCAL_REPO = "{$LOCAL_ROOT}/{$LOCAL_REPO_NAME}";
$REMOTE_REPO = "git@github.com:jonathanstark/my_new_site.git";
$DESIRED_BRANCH = "dev";
// Delete local repo if it exists
if (file_exists($LOCAL_REPO)) {
shell_exec("rm -rf {$LOCAL_REPO}");
}
// Clone fresh repo from github using desired local repo name and checkout the desired branch
echo shell_exec("cd {$LOCAL_ROOT} && git clone {$REMOTE_REPO} {$LOCAL_REPO_NAME} && cd {$LOCAL_REPO} && git checkout {$BRANCH}");
die("done " . mktime());