Git部署到开发站点

Git部署到开发站点,git,deployment,Git,Deployment,我对Git还不熟悉,我正试着对这件事了如指掌。我在我的live服务器上设置了一个现有的Drupal站点。我希望能够将git与此一起使用,拥有一个单独的git存储库,并能够将项目复制到本地计算机上,以便在那里工作。我假设这是整个过程,但还是有点困惑: SSH连接到实时网站(例如/public_html/drupal站点)。在工作文件夹中设置一个git存储库,执行git初始化 使用Add.添加文件,然后提交 在服务器上的另一个位置设置一个裸存储库(例如/public\uhtml/git) 将live

我对Git还不熟悉,我正试着对这件事了如指掌。我在我的live服务器上设置了一个现有的Drupal站点。我希望能够将git与此一起使用,拥有一个单独的git存储库,并能够将项目复制到本地计算机上,以便在那里工作。我假设这是整个过程,但还是有点困惑:

  • SSH连接到实时网站(例如/public_html/drupal站点)。在工作文件夹中设置一个git存储库,执行git初始化
  • 使用Add.添加文件,然后提交
  • 在服务器上的另一个位置设置一个裸存储库(例如/public\uhtml/git)
  • 将live网站Git存储库克隆到我的本地计算机
  • 在Git存储库的/public_html/Git/.Git上设置一个post-receive钩子
  • 然后git远程添加origin/public\u html/git/.git

  • 然后,当我在本地机器上进行更改时,我想在live server上进行反映,然后我会执行git push origin master?

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

    正常的部署流程应如下所示:

  • 在本地开发机器上进行更改
  • 添加和提交更改-
    git添加和&git提交
  • 将更改推送到服务器上设置的远程存储库(这是而不是您的网站目录)
    git Push production master
    (其中
    production
    是您配置的远程存储库的名称)
  • Post接收钩子运行,复制更正目录所需的所有文件,并执行任何其他构建/配置任务

  • 如果您愿意为post-receive钩子编写自己的部署脚本,那么这当然是一个选项,但您最好使用已经为此目的设计的工具,例如或类似工具。

    感谢@rmorrin澄清一下,如果项目已经启动,而我还没有本地副本的话(从另一家公司接管网站),然后我会首先在live站点上设置git存储库,然后将其克隆到我的本地环境中?这当然是一个选项,是的,但可能是不必要的。如果您只希望最初在开发人员机器上获取文件,那么您可以使用ssh/ftp下拉文件,在本地创建存储库,然后创建单独的存储库在远程服务器上推送您的更改以配置部署后挂钩。这是完整过程的一个很好的演练。谢谢!这正是我需要的!