使用 Gitpod#
关于 Gitpod#
Gitpod 是一个基于浏览器的开发环境。
以下是使用 Gitpod 的一些好处
绕过本地计算机配置和技术问题
通过使用预配置的虚拟环境为开源项目做贡献来节省时间
节省本地计算机上的空间
使用 Gitpod 为 PyMC 做出贡献#
这些说明是专门为 pymc-devs/pymc 代码仓库做出贡献而准备的。
Gitpod 工作流程#
Fork pymc 代码仓库: pymc-devs/pymc
创建一个 Gitpod 账户。您可以使用您的 GitHub 账户登录并授权访问:https://gitpod.io/
注意
Gitpod 将在您的 GitHub 账户中显示为一个授权应用,位置在这里: settings/applications
授予 GitHub / Gitpod 集成权限。
a) 前往:https://gitpod.io/user/integrations
b) 选择 GitHub,然后点击 “编辑权限”
c) 选择这些权限:
user:email
,public_repo
,repo
,workflow
在 Gitpod 中,创建一个 “新工作空间”。在这里您需要选择 fork 后的 pymc 代码仓库。如果您没有看到它,您可以将您 fork 的仓库路径粘贴到 “Context URL” 框中。例如:
https://github.com/yourusername/pymc
。然后选择 “新工作空间”。注意
Gitpod 将拉取一个容器并设置工作空间。容器构建需要几分钟时间。
一旦 Gitpod 启动并运行,其界面类似于 Visual Studio Code (VSC) 界面,它将在您的浏览器中显示。您将在终端窗口中看到安装通知。这可能需要 5-10 分钟。完成后,终端将指示您位于 Gitpod 上 “(base)” 环境中,并指向您 fork 的代码仓库。
这是一个例子
(base) gitpod@reshamas-pymc-0ygu5rf74md:/workspace/pymc$
注意
此工作环境已使用 micromamba 进行设置,它是一个小型的纯 C++ 可执行文件,具有足够的功能来引导完全可用的 conda 环境。
在终端中使用
git remote -v
检查您的 git 远程仓库是否正确。示例
(base) gitpod@reshamas-pymc-0ygu5rf74md:/workspace/pymc$ git remote -v origin https://github.com/reshamas/pymc.git (fetch) origin https://github.com/reshamas/pymc.git (push) upstream https://github.com/pymc-devs/pymc.git (fetch) upstream https://github.com/pymc-devs/pymc.git (push) (base) gitpod@reshamas-pymc-0ygu5rf74md:/workspace/pymc$
在终端检查正在使用的 python 和 pymc 版本。
检查 pymc 的版本:
pip list | grep pymc
示例
(base) gitpod@reshamas-pymc-vpfb4pvr90z:/workspace/pymc$ pip list | grep pymc pymc 5.1.0 /workspace/pymc pymc-sphinx-theme 0.1
检查 python 的版本:
python3 --version
示例
(base) gitpod@reshamas-pymc-vpfb4pvr90z:/workspace/pymc$ python3 --version Python 3.11.0
同步代码仓库
确保您在正确的位置
cd /workspace/pymc git checkout main
同步代码仓库代码和版本标签:
git pull upstream main --tags
更新已安装的版本号:
pip install -e .
示例
Obtaining file:///workspace/pymc Installing build dependencies ... done Checking if build backend supports build_editable ... done Getting requirements to build editable ... done Preparing editable metadata (pyproject.toml) ... done Requirement already satisfied: arviz>=0.13.0 in /opt/conda/lib/python3.11/site-packages (from pymc==5.1.1+303.g6f8f9eef) (0.15.1) ... Building editable for pymc (pyproject.toml) ... done Created wheel for pymc: filename=pymc-5.1.1+303.g6f8f9eef-0.editable-py3-none-any.whl size=11527 sha256=6211b7149b3ab09813b2badb3010f54d2d4ab014f75054d73f204ac5ea82ed82 Stored in directory: /tmp/pip-ephem-wheel-cache-wmkfx8pd/wheels/73/bf/14/341b7fa040e9af1991e12077c13913921be3069fe3bdf78752 Successfully built pymc Installing collected packages: pytensor, pymc Attempting uninstall: pytensor Found existing installation: pytensor 2.10.1 Uninstalling pytensor-2.10.1: Successfully uninstalled pytensor-2.10.1 Successfully installed pymc-5.1.1+303.g6f8f9eef pytensor-2.18.6
检查正在使用的 PyMC 版本:
python -c "import pymc; print(pymc.__version__)"
示例
(base) gitpod@reshamas-pymc-syxfrf90fp0:/workspace/pymc$ python -c "import pymc; print(pymc.__version__)" 5.1.1+303.g6f8f9eef
提醒:Git 工作流程#
注意
在终端中,在开始工作之前,记得创建一个特性分支
git checkout -b feature-branch
在处理完文件后,遵循 Git 工作流程
git add file_name
git commit -m 'message'
git push origin feature-branch
资源#
视频:使用 Gitpod 为 PyMC 做出贡献 (15 分钟视频)
Gitpod 注意事项#
账单#
Gitpod 免费计划目前每月允许 500 个免费积分,相当于 50 小时的标准工作空间使用时长。使用信息可以在 Gitpod 账单部分 找到。
注意
请务必查看 Gitpod 关于 工作空间删除 的政策,并了解更多关于
“启动” 和 “停止” 工作空间
“工作空间不活动”: 默认情况下,工作空间在 30 分钟没有用户输入(例如,按键或终端输入命令)后停止。您可以将工作空间超时时间增加到最多 24 小时。
工作空间在 14 天后被删除。固定的工作空间永远不会自动删除。
您可以从 Gitpod 仪表板的工作空间列表中固定一个工作空间。