本地和远程Web服务器的Git配置。从哪里开始?

时间:2017-10-04 08:45:40

标签: git web-services github web ftp

我是一个由10名成员组成的团队,我们建立了网站(其中有几十个,每个约9GB)。由于该公司是老式的,我们不使用git或任何类型的版本控制,而是我们有3种不同类型的服务器(通常运行Windows服务器):

  • 本地服务器(在我们办公室附近的一个房间)进行测试,一旦我们对本地测试感到满意,我们就通过ftp推送更改
  • 预览服务器(远程),由客户端用于验证我们的新功能。如果客户满意,我们通过
  • 中的ftp推送更改
  • 官方服务器(远程),由消费者使用

可以看出,我们实际上是使用3种风格的分支:测试,预览和掌握。

但是我们每个人都没有服务器:

我们访问本地服务器(文件夹)并直接修改文件, 并通过浏览器我们看到了变化。通常我们不访问 同一个文件,所以我们没有冲突。

我知道我们应该在我们的个人计算机上运行服务器,进行我们需要的更改然后将它们推送到远程预览和官方服务器......但我们不能这样做,因为我们已经有7运行所有本地网站的不同工作站(在我们办公室附近的房间)。

也许我们应该: 不要改变我们在本地工作的方式,在所有服务器中设置git所以: 我们将更改从本地服务器推送到预览官方服务器

那么,我如何配置git以满足我们的需求呢?有某种  我应该研究哪些策略?

1 个答案:

答案 0 :(得分:0)

你应该看看a successful branching model:正如你所提到的那样,你将拥有3个分支(测试,预览,主控),你将从测试工作站管理(将更改合并到previewmaster)。

然后您将推送到不同的遥控器,即您需要为要发布的每个服务器定义一个。例如,每个服务器都会将相关分支签出为git checkout -b preview origin/preview

现在的诀窍是你无法推送到工作副本(你已经签出的分支,在上面的例子中是preview)。您需要转到origin/preview。在预览服务器上,您需要执行git rebase。此外,您可以在远程服务器上创建更新后挂钩,以便在传入更新时执行git rebase

至于在同一个文件集中一起工作,嗯,这需要一个额外的步骤来进行以前的常规协调:开发人员需要小心只提交他们自己的更改。此外,由于您分支整个项目,因此无法在工作流中提出的单独分支上工作。你注定要坚持test分支。