使用git进行web测试和部署live站点

使用git进行web测试和部署live站点,git,zend-framework,egit,zend-studio,git-bash,Git,Zend Framework,Egit,Zend Studio,Git Bash,目前,我有一个本地git回购协议,位于H:drive。当我对文件进行更改并保存它们时,它们存储在这里。然后,我可以提交、推送和拉取文件和分支到我的git服务器上的远程repo 我想做的是处理文件,而不是将它们保存到本地H驱动器,我想将它们保存到我的测试服务器上,以便可以在浏览器中从该服务器运行和测试它们。当所有测试完成后,我希望将文件从测试服务器合并到实时服务器,并将它们作为实时系统放在那里,或者我需要从测试服务器和实时服务器中提取文件,并在本地合并它们,然后将主分支推回实时服务器 此外,当分支

目前,我有一个本地git回购协议,位于H:drive。当我对文件进行更改并保存它们时,它们存储在这里。然后,我可以提交、推送和拉取文件和分支到我的git服务器上的远程repo

我想做的是处理文件,而不是将它们保存到本地H驱动器,我想将它们保存到我的测试服务器上,以便可以在浏览器中从该服务器运行和测试它们。当所有测试完成后,我希望将文件从测试服务器合并到实时服务器,并将它们作为实时系统放在那里,或者我需要从测试服务器和实时服务器中提取文件,并在本地合并它们,然后将主分支推回实时服务器

此外,当分支合并到我的live master分支并推送到live server时,我如何从git repo“解包”所有文件,以便它们可以作为live站点运行

我已经尝试了
git归档
,并阅读了
git bundle
,尝试看看这是否允许我进行某种形式的“解包”,但到目前为止,我还无法实现任何我真正可以使用的东西

这是否可能按照我描述的方式进行,如果可能,您将如何进行


如果这是不可能的,或者如果有一个更好的方法来做这件事,我忽略了,请让我知道。

我不知道你说的解包是什么意思,但我想你正在寻找的是部署更改的可能性。 假设您正在开发应用程序,并且为此使用了一个暂存或开发分支。现在,如果你想在testserver上测试你的应用程序,你首先必须把所有东西都推到你的存储库中。 你可能想调查一下。 使用Capistrano,无论您使用何种编程语言,都可以轻松部署应用程序。 这样做的步骤是首先使用“sudo aptitude install Capistrano”或更好的“gem install Capistrano”安装Capistrano。 现在您已经拥有了它,您可以在本地转到应用程序并键入“capify” 因为您有多个分支,所以您需要部署到不同的服务器上。 现在Capistrano应该创建一些文件,您应该打开.config/deploy.rb并插入存储库、targetserver和要推送到targetserver的分支的数据。有几个HowTo,但是default.rb对您来说应该很熟悉。 现在,您的测试服务器通过Capistrano链接到存储库的Staging分支,您可以使用“cap Staging deploy”通过ssh将应用部署到测试服务器。 如果一切正常,您可以在本地将临时分支合并到主分支中,并将其推送到存储库中。现在,由于您的实时系统应该链接到回购协议的主分支,您可以键入“cap production deploy”让应用程序在您的实时系统上运行。您可能需要关心数据库迁移,但总的来说,仅此而已

快速安装/配置,您的工作流程将比现在更好

如果您没有对服务器的ssh访问权,您可以查看git ftp。
希望这对你解决问题有帮助

我不知道你说的解包是什么意思,但我猜你在寻找的是部署更改的可能性。 假设您正在开发应用程序,并且为此使用了一个暂存或开发分支。现在,如果你想在testserver上测试你的应用程序,你首先必须把所有东西都推到你的存储库中。 你可能想调查一下。 使用Capistrano,无论您使用何种编程语言,都可以轻松部署应用程序。 这样做的步骤是首先使用“sudo aptitude install Capistrano”或更好的“gem install Capistrano”安装Capistrano。 现在您已经拥有了它,您可以在本地转到应用程序并键入“capify” 因为您有多个分支,所以您需要部署到不同的服务器上。 现在Capistrano应该创建一些文件,您应该打开.config/deploy.rb并插入存储库、targetserver和要推送到targetserver的分支的数据。有几个HowTo,但是default.rb对您来说应该很熟悉。 现在,您的测试服务器通过Capistrano链接到存储库的Staging分支,您可以使用“cap Staging deploy”通过ssh将应用部署到测试服务器。 如果一切正常,您可以在本地将临时分支合并到主分支中,并将其推送到存储库中。现在,由于您的实时系统应该链接到回购协议的主分支,您可以键入“cap production deploy”让应用程序在您的实时系统上运行。您可能需要关心数据库迁移,但总的来说,仅此而已

快速安装/配置,您的工作流程将比现在更好

如果您没有对服务器的ssh访问权,您可以查看git ftp。
希望这对你解决问题有帮助

如果您的测试服务器位于LAN上,您只需在其上安装Samba,然后将其webroot安装为您的H:drive。如果是远程服务器,某种类型的SSHFS客户端(如Expandrive)可能会工作。

如果测试服务器位于LAN上,您只需在其上安装Samba,然后将其webroot安装为您的H:驱动器。如果是远程服务器,某种SSHFS客户端(如Expandrive)可能会工作。

听起来您需要研究FTP(文件传输协议)。您当前的工作环境可能也很重要,因为有些东西在linux或Mac上不工作的windows上运行良好,反之亦然。如果您有一个托管的生产站点,您的主机可能会提供一些您正在寻找的工具。听起来您需要查看FTP(文件传输协议)。您当前的工作环境可能也很重要,因为有些东西在linux或Mac上不工作的windows上运行良好,反之亦然。如果您有一个托管生产站点,您的主机