\ 在合并拉取请求之前,代码审查是必不可少的。让另一位工程师查看代码更改是一种常见的做法,如果您配置了一个持续集成 (CI) 管道来运行 linter 和单元测试以自动捕获问题,那就更好了。
\ 对于 UI 更改,直观地检查应用程序中的更改也是一个好主意。这样做可能需要审阅者检查分支并在他们的机器上运行应用程序。根据应用程序架构的复杂性,在本地运行应用程序可能只需要一个命令就很简单,或者可能需要几个步骤和相当长的时间。
\ 拉取请求审查应用程序通过在预览环境中应用拉取请求更改的应用程序版本来帮助促进这一过程。现在审阅者不需要自己拉下代码了!
\选择架构和轻推理论的学生知道,如果你想增加期望的行为,你需要使期望的行为变得容易。公关评论应用程序就是这样做的!通过简化可视化审查更改,公关审查应用程序使代码审查员更有可能这样做。
\ 在本文中,我们将了解如何使用Render配置 PR 审核应用程序,这是一种平台即服务 (PaaS) 解决方案,可让您在云中构建和运行应用程序。
\
\
演示概述
让我们在演示中使用 React 应用程序。这个应用程序是一个地牢爬行游戏,我们的英雄,蓝色方块,探索一个地牢并与敌人战斗,直到他找到并击败地牢老板。此应用程序仅包含前端代码,因此非常适合作为静态站点托管。您可以在 GitHub 上查看代码或在此处玩游戏。
\ 现在假设您想对我们的应用程序进行更改。我们将创建一个新分支,在本地进行更改,向上推送该分支,然后创建一个拉取请求以将其合并到主分支中。
\ 如果审阅者想要直观地检查我们的更改,他们可以拉下分支并在他们的机器上本地运行应用程序,只需使用npm install
安装依赖项并使用npm start
应用程序。
\ 为了帮助使视觉审查更加容易,让我们配置我们的 repo 以在每次提交新的拉取请求时创建一个审查应用程序。
\
\
开始使用渲染
我们首先要使用 Render 创建一个新帐户。我使用我的电子邮件创建了一个帐户,然后连接了我的 GitHub 帐户,但如果您愿意,也可以直接使用 GitHub 进行身份验证。
\ 一旦您创建了一个帐户,您可以选择创建一个新的静态站点:
\
\ 选择此选项将提示我们输入我们希望连接到的现有 GitHub 存储库的 URL:
\ 然后我们可以提供有关项目的一些详细信息,指定名称(“Dungeon Crawler”)、主分支( master
)、构建命令( npm run build
)和输出目录( build
)。然后,我们将单击表单底部的“创建静态站点”。
\
\ 话虽如此,Render 将首次构建和部署我们的应用程序。就这么简单!我们的地牢爬虫应用程序现已在此处公开提供。
\
\
使用 Render 配置 PR Review 应用
现在我们已经连接了我们的存储库并使用 Render 部署了我们的应用程序,让我们设置 PR 审查应用程序(或 Render 称之为“拉取请求预览”)。为此,我们可以单击“PRs”选项卡,然后单击“Enable Pull Request Previews”按钮。
\ 这应该是为您的存储库启用 PR 审查应用程序所需的全部内容。但是,如果您在使用 GitHub 进行身份验证时遇到问题,您可以按照Render 的故障排除指南寻求帮助。就我而言,我需要仔细检查我是否允许 Render 与我的地牢爬虫 repo 进行交互,然后我就可以开始了。
\ 现在,让我们发出一个新的拉取请求,以查看此评论应用程序的运行情况!
\ 我们将创建一个新分支,对应用程序的标头进行少量更改,提交并推送更改,然后发出新的拉取请求以将我们的更改合并到主分支中。
\ 一旦我们创建了一个新的拉取请求,Render 将在 PR 上发表评论,他们正在为我们创建一个新的评论应用程序。评论应用完成部署后,Render 将发布第二条评论,通知我们评论应用已准备好可供查看。
\ 我们可以点击我们的 PR 审查应用程序的链接,瞧——变化就在那里!请注意地址栏中评论应用的 URL: https://dungeon-crawler-pr-4.onrender.com
://dungeon-crawler-pr-4.onrender.com。
\ 我们的标题文本现在全部大写,并应用了一些额外的字母间距。评论应用程序让我们或任何其他评论者可以更加简单地快速验证更改确实显示得很好。
\ 一旦我们批准并合并拉取请求,PR 审查应用程序就会被销毁,因为它不再需要。之后,Render 将看到新提交合并到主分支中,并将我们应用程序的最新版本部署到主 URL: https ://dungeon-crawler.onrender.com。
\ 请注意,这些 PR 审查应用非常适合静态网站和查看对单个资源所做的更改。如果你有一个更复杂的应用程序需要一个完整的测试环境,包括后端服务器、数据库或其他资源,你应该看看 Render 的预览环境,它可以处理更复杂的设置。
\
结论
几分钟之内,我们就能够使用 Render 部署我们的应用程序并配置我们的存储库,以便为每个拉取请求创建审查应用程序。这个过程不仅对我们来说很容易设置,而且它还使代码审查对每个在 repo 上工作的开发人员来说更加容易。
\ 我们的公关审查应用程序通过消除必须在本地运行应用程序的摩擦,使直观地审查更改变得简单。通过这样的设置,我们正在巧妙地推动代码审查员更加彻底。
\
也在这里发布。
原文: https://hackernoon.com/create-apps-to-automatically-review-pull-requests-with-render?source=rss