使用 Gitpod 进行 pandas 开发#
本文档的这一部分将指导您完成:
使用 Gitpod 进行 pandas 开发环境
创建 pandas 存储库在 GitHub 上的个人 fork
pandas 和 VSCode 的快速游览
在 Gitpod 中处理 pandas 文档
Gitpod#
Gitpod 是一个开源平台,用于自动化和即用型开发环境。它使开发人员能够将开发环境描述为代码,并直接从浏览器为每个新任务启动即时、全新的开发环境。这减少了安装本地开发环境和处理不兼容依赖项的需求。
Gitpod GitHub 集成#
要使用 Gitpod,您需要在 GitHub 帐户上安装 Gitpod 应用,因此如果您还没有帐户,则需要先创建一个。
要开始,只需在 Gitpod 登录,并授予 GitHub 适当的权限。
我们构建了一个 Python 3.10 环境,所有开发依赖项将在环境启动时安装。
Fork pandas 存储库#
作为贡献者,处理 pandas 的最佳方式是首先 fork 该存储库。
导航到您的 fork。您的 fork 的 URL 将类似于 noatamir/pandas-dev,其中
noatamir将替换为您的 GitHub 用户名。
启动 Gitpod#
在通过 GitHub 身份验证到 Gitpod 后,您可以安装 Gitpod Chromium or Firefox browser extension ,它将在存储库的 Code 按钮旁边添加一个 Gitpod 按钮:
如果安装了扩展程序,您可以单击 Gitpod 按钮来启动一个新工作区。
或者,如果您不想安装浏览器扩展,可以访问 https://gitpod.io/#https://github.com/USERNAME/pandas,将
USERNAME替换为您的 GitHub 用户名。在这两种情况下,这都会在您的网络浏览器中打开一个新标签页,并开始构建您的开发环境。请注意,这可能需要几分钟。
环境构建完成后,您将被引导到您的工作区,包括 VSCode 编辑器以及处理 pandas 所需的所有依赖项。首次启动工作区时,您会注意到可能有一些正在运行的操作。这将确保您安装了 pandas 的开发版本。
When your workspace is ready, you can test the build by entering:
$ python -m pytest pandas
请注意,此命令需要一段时间才能运行,因此一旦确认它正在运行,您可能希望使用 Ctrl-C 取消它。
快速工作区导览#
Gitpod 使用 VSCode 作为编辑器。如果您以前没有使用过此编辑器,可以查看“入门” VSCode docs 来熟悉它。
您的工作区看起来会与下图类似:
我们在编辑器中标出了一些重要部分:
您当前的 Python 解释器 - 默认情况下,这是
pandas-dev,应在状态栏和终端上显示。您无需激活 conda 环境,因为它将始终为您激活。您当前的分支始终显示在状态栏中。您也可以使用此按钮更改或创建分支。
GitHub Pull Requests 扩展 - 您可以使用它来处理工作区中的 Pull Requests。
Marketplace 扩展 - 我们已向 pandas Gitpod 添加了一些必备扩展。不过,您还可以为您的用户安装其他扩展或语法高亮主题,这些将为您保留。
您的工作区目录 - 默认情况下,它是
/workspace/pandas-dev。请勿更改此目录,因为这是 Gitpod 中唯一保留的目录。
我们还预装了一些工具和 VSCode 扩展,以帮助改善开发体验:
使用 Gitpod 的开发工作流#
本文档的 为 Pandas 做贡献 部分包含有关 pandas 开发工作流的信息。在处理您的贡献之前,请务必仔细阅读。
使用 Gitpod 时,git 已为您预先配置好:
您无需配置 git 用户名和电子邮件,因为在通过 GitHub 身份验证时已为您完成。除非您使用 GitHub 功能来隐藏电子邮件地址。您可以在终端中使用命令
git config --list检查 git 配置。使用git config --global user.email “your-secret-email@users.noreply.github.com”将您的电子邮件地址设置为您在提交 GitHub 个人资料时使用的地址。由于您是从自己的 pandas 分叉启动工作区的,因此默认情况下,
upstream和origin都已添加为远程。您可以通过在终端中输入git remote来验证这一点,或者通过点击状态栏上的**分支名称**(见下图)来验证。
渲染 pandas 文档#
您可以在 如何构建 pandas 文档 部分找到有关如何使用 Sphinx 渲染文档的详细文档。要构建完整文档,您需要在 /doc 目录中运行以下命令::
$ cd doc
$ python make.py html
或者,您可以使用以下命令构建单个页面::
python make.py --single development/contributing_gitpod.rst
您有两种主要方法可以在 Gitpod 中渲染文档。
选项 1:使用 Liveserve#
在
pandas/doc/build/html中查看文档。要查看页面的渲染版本,您可以右键单击
.html文件,然后单击 Open with Live Serve。 或者,您可以在编辑器中打开该文件,然后单击状态栏上的 Go live 按钮。
编辑器右侧会打开一个简单的浏览器。我们建议将其关闭,然后单击弹出窗口中的 Open in browser 按钮。
要停止服务器,请单击状态栏上的 Port: 5500 按钮。
选项 2:使用 rst 扩展#
一种查看 .rst 文件实时更改的快速简便方法是使用 rst 扩展和 docutils。
备注
这将生成一个简单的文档实时预览,没有 html 主题,并且可能不会正确添加某些反向链接。但它是一种无需构建 html 文件即可获得即时反馈的简便轻量级方式。
打开
doc/source目录中的任意源文档文件进行编辑。在 Mac 上使用 Cmd-Shift-P 或在 Linux 和 Windows 上使用 Ctrl-Shift-P 打开 VSCode 命令面板。输入 “restructured”,然后选择 “Open preview” 或 “Open preview to the Side”。
在编辑文档时,您将在编辑器中看到其实时渲染效果。
如果您想看到使用 html 主题的最终输出,您需要使用 make html 重新构建文档,并使用选项 1 中描述的 Live Serve。
常见问题解答和故障排除#
我的 Gitpod 工作区会保留多久?#
停止的工作区将保留 14 天,之后如果没有使用将被删除。
我可以回到以前的工作区吗?#
是的,假设您离开了一段时间,但想继续为 pandas 做贡献。您需要访问 https://gitpod.io/workspaces 并点击您想要重新启动的工作区。您所有的更改都会保留在您上次离开时的状态。
我可以安装额外的 VSCode 扩展吗?#
当然可以!您安装的任何扩展都会安装在您自己的工作区中并被保留。
如果我没有使用它,我的工作区会保持活动状态多久?#
如果您在浏览器标签页中保持工作区打开但没有与之交互,它将在 30 分钟后关闭。如果您关闭了浏览器标签页,它将在 3 分钟后关闭。
我的终端是空白的——没有光标,而且完全没有响应#
不幸的是,这是 Gitpod 方面的一个已知问题。您可以通过以下两种方式解决此问题:
完全创建一个新的 Gitpod 工作区。
访问您的 Gitpod dashboard 并找到正在运行的工作区。将鼠标悬停在上面,然后点击 三个点的菜单,然后点击 Stop。当工作区完全停止后,您可以点击它的名称重新启动它。
我已通过 GitHub 身份验证,但仍无法通过 Gitpod 提交到存储库。#
访问 https://gitpod.io/integrations 并确保您已登录。将鼠标悬停在 GitHub 上,然后点击右侧出现的三个按钮。点击 “Edit Permissions”,确保您已勾选 public_repo。点击 Update Permissions,然后在 GitHub 应用程序页面上确认更改。
致谢#
本页面部分内容改编自 NumPy 项目。