我们有一个由3个程序员组成的团队,还有一个专用服务器,我们通过FTP客户端上传和下载文件。我们正在编辑大肠菌群,我立即想到了GIT。但是在我当前的设置中它将如何工作?见下文:
现在,我们在该服务器上有2个远程目录。一个是我们应用程序的生产环境,另一个是开发环境。我们编辑和添加新闻文件,在线对其进行测试,并在更新到期时将选定的文件移至生产环境。这很容易理解。
使用GIT,我如何分支存储库,进行所需的更改,仍然能够在同一服务器环境上对其进行测试?我认为GIT将分支到我的本地计算机。合并之前,我需要确保在相同的基础架构上进行测试。
非常感谢您的任何帮助,对于冗长的帖子,我们深表歉意。
答案 0 :(得分:1)
服务器上远程回购的最佳常规做法是:
这样,您有两个分支,每个分支被推送到远程服务器上的裸仓库,从而触发同一服务器上专用工作树的更新(每个分支一个)。
验证git checkout --force
分支后,可以将其合并到dev
分支,该分支将被推送到同一裸仓库,并触发目标工作树的更新。
答案 1 :(得分:1)
听起来像是Git的绝佳用例。要记住的一件事是Git是一个分布式版本控制系统。每个开发人员都有自己的存储库,您将需要建立一个集中的“原始”存储库,在将其发布到生产之前,您可以在其中共享工作。
下面的链接介绍了流行的工作流程:Gitflow。要记住的主要要点是,您需要标记源代码历史记录中的特定点以进行测试,然后仅在测试成功之后将这些更改合并到主版本中。
https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow
以3人为一组简化Gitflow,您可能想从两个分支开始:每个要为其生成 builds 的环境的分支。
下面的步骤概述了一种可能的发布到测试和生产环境的方法。
dev
并将其推送到原始位置dev
)标记dev/1.0.0
分支dev/1.0.0
合并到master
,进行构建并将其部署到生产中dev/1.0.2
合并到master中。master/1.0.2
,以便使其生效通常,应该通过不直接涉及git的部署过程来更新生产环境。您将要设置一个构建,该构建从存储库中的特定标记版本部署代码。您可以将现有的FTP更新过程用于该部分。
这里有一些更多的入门指南。希望这会有所帮助!