小型网络团队的 Git 工作流程

标签 git workflow

我知道这里已经有很多关于这个主题的问题,但我找不到我需要的东西。

我们是一个目前使用 SVN 但很快就会切换到 Git 的开发人员小团队。我们习惯于全天检查更改并推送到实时网站,但目前缺乏任何正式的测试程序,这是我们想添加的内容。我习惯用 SVN 做这件事的方式是:

  • 在个人测试环境中开发
  • 检查您的更改
  • 将当前存储库文件发送到全局(类生产)测试网络服务器,并进行测试
  • 将当前存储库文件发送到实时网络服务器

这显然会产生一些问题,尤其是在沟通不畅的情况下。我曾经历过未经测试的更改已经上线的情况,这是我们绝对希望避免的事情。

我设想的是一个主 Git 存储库,其中包含在实时服务器上运行的经过测试的代码。然后有一个用于测试修订的存储库的克隆。我想要一个脚本,负责从请求的开发人员那里提取更改,将它们放在测试存储库的一个分支中,并运行一些自动化测试以确保没有重大问题被破坏。当所有这些都检查完毕后,该分支可以被 merge 并向上推送到主服务器,然后推送到实时服务器。

我想听听有关此可能的工作流程的任何评论以及任何改进建议或如何以不同的方式进行操作。此外,任何关于如何设置它的细节也将不胜感激。谢谢!

编辑:我已经使用上述方法一段时间了,效果很好。

最佳答案

您真的需要一个单独的存储库吗?您的实时代码只是一个分支;您可以使用其他分支机构在测试中“部署候选人”。

您不一定需要脚本来 pull 更改 - 开发人员可以将它们推送到单独的分支,然后调用脚本来测试该分支。

关于小型网络团队的 Git 工作流程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4492169/

相关文章:

powershell - 如何使用从cmdlet生成的Windows工作流事件?

workflow - 如何在 Alfresco Share 中自定义工作流程详细信息页面?

database - 如果我们使用 git 编写代码,如何对 CMS 内容(例如 Drupal)进行版本控制

git - Azure Devops Pipeline 运行会导致 Git 错误?

Xcode 机器人 : git submodules not initialized

java - 自定义 apache ant 任务 git-add (jgit) 不起作用

git - 在 Centos 5 EC2 上安装 git

git - 无法从 windows/phpstorm 推送到 git

c# - 工作流设计困境——状态机,yes or no

cron - Airflow 的 DAG 在一分钟内运行多次,尽管它计划每 5 分钟运行一次