Git和网站开发工作流程

时间:2017-08-23 18:06:18

标签: git github web repository workflow

我的询问是具体的,我理解他们可以是主观的;我很感激任何意见。

这是我在git之前做的事情:

  • 我运行PHP / MYSQL网站
  • 我在本地开发并在WAMP上进行测试
  • 我FTP到临时站点dev.mywebsite.com
  • 一旦我对所有更改感到满意,我就会FTP到实时网站

当我决定开始使用Git时:

  • 我在托管服务器上初始化了一个裸仓库
  • 创建了一个post-receive hook以部署到dev.mywebsite.com
  • 我将dev.mywebsite.com repo克隆到我当地的开发机器
  • 我测试代码 - >提交 - >推送到远程(开发站点)

以下是我的问题:

1)我需要一些文件在本地vs远程(这些主要是配置文件)上保持不同。我正在使用--assume-unchanged这些文件。但是,我读到了做git reset'会撤消这些,所以我的第一个问题: - 当我从本地推送到远程时,是否有更好的方法永远不会更改配置文件?

2)我的工作流程以我推送到开发站点结束。我不知道如何从那里开始,并以最有效和无风险的方式将我的代码部署到实时网站。

* 3)奖金问题:我应该将github / bitbucket / etc ..整合到我的工作流程中吗?

谢谢

1 个答案:

答案 0 :(得分:1)

您的方法仅适用于非常小的开发组和小型项目,无需复杂的部署。但是:

1)本地与远程

我通常会在存储库中保留远程版本的配置文件,并使用未跟踪的文件在本地覆盖它们。然后配置加载器搜索覆盖,但如果没有则不会失败。

2)开发+制作

一种相当简单的方法是保留一个分支用于开发(dev)和分支用于生产(master)。或者你想要的多个分支,实际上。在钩子中,您将获得推送分支的名称,并决定将新代码复制到哪里(在最简单的情况下)。

更新后的挂钩可能如下所示:

radius

3)外部存储库

如果您想要备份或与世界分享,是的,您应该:)