将Git部署到开发站点

问题描述:

我是Git的新手,试图围绕这一点进行包装。我在现场服务器上设置了一个现有的Drupal站点。我希望能够使用这个git,拥有一个单独的Git仓库,并且能够将复制到我的本地计算机的项目在那里工作。这是这个过程中,我假设,但还是有点困惑:将Git部署到开发站点

  1. SSH实际网站(例如/的public_html/Drupal的站点设置了一个Git仓库的工作做一个git的init。文件夹。
  2. 使用添加添加文件,然后提交。
  3. 建立在另一个地方纯仓库的服务器(例如,/的public_html/GIT)。运行git的init --bare
  4. 克隆活网站Git存储库到我的本地机器
  5. 在Git存储库中设置post-receive挂钩/public_html/git/.git
  6. 然后远程Git添加起源/public_html/git/.git

当我那么做,我想去反映活的服务器上我的本地机器上的变化,我然后做混帐推起源高手?

这是基本的想法,是的。理想情况下,您不希望完整的Git存储库位于您的生产/开发网站所在的目录中。

一个正常的部署流程应该是这样的:

  1. 使地方发展机变化
  2. 添加和更改提交 - git add . && git commit
  3. 将更改设置在服务器上远程存储库(这是不是您的网站目录) - git push production master(其中production是您的配置的远程名称)
  4. 后接收挂钩运行,复制所有文件需要纠正目录并执行任何额外的构建/配置任务

如果你愿意为post-receive hook编写你自己的部署脚本,那么它肯定是一个选项,但是你最好使用工具已经为此设计,如Capistrano或类似。

+0

谢谢@rmorrin只是为了澄清,但如果项目已经生效,我还没有本地副本(从另一家公司获取网站),那么我会在现场直接创建一个git存储库,然后将其克隆到我的本地环境? – kayzoe 2014-11-03 15:56:27

+1

这绝对是一种选择,但可能不必要。如果您的唯一愿望是最初在您的开发机器上获取文件,那么您可以使用ssh/ftp下拉文件,在本地创建存储库,然后在远程服务器上创建一个单独的存储库,以便将更改推送到并配置post-部署钩子。 [Here](http://www.saintsjd.com/2011/03/automated-deployment-of-wordpress-using-git/)是整个流程的一个很好的演练。 – rmorrin 2014-11-03 16:06:16

+0

谢谢!这就是我需要的! – kayzoe 2014-11-03 16:07:15