设置开发环境

本指南适用于以前从未在 GitHub 上为开源项目贡献过代码的人。如果你已经完成了本指南中的步骤,则无需再次完成它们。

注意

本指南适用于以前从未在 GitHub 上为开源项目贡献过代码的人。如果你已经熟悉如何在 GitHub 上为开源项目贡献代码,请转到 开发工作流程 指南

为代码库贡献代码的第一步是创建你的开发环境。

重要

本指南中的每个步骤只需要执行一次。完成这些步骤后,即使你第二次贡献代码,也不需要重复执行。

安装 Git

SymPy 可在 GitHub 上获取,并使用 Git 进行版本控制。工作流程是将代码拉取和推送到主仓库。安装适用于您操作系统的相应版本的 Git 以开始开发。

类 Linux 系统:

通过您本地的包管理系统安装 git

yum install git

sudo apt-get install git

Windows 和 macOS:

获取 git 的最简单方法是下载 GitHub 桌面版,它将安装 git,并提供一个友好的图形界面(本教程将基于命令行界面)。请注意,您可能需要进入 GitHub 首选项并选择“安装命令行工具”选项才能将 git 安装到终端。

如果您决定使用 GitHub 图形界面,请确保在设置中禁用任何“同步即变基”选项。

在 Git 中配置您的姓名和电子邮件

Git 通过检查用户的姓名和电子邮件来跟踪谁进行了每次提交。此外,我们使用此信息将您的提交与您的 GitHub 帐户关联。

要设置这些信息,请输入以下代码,将姓名和电子邮件替换为您自己的 (--global 可选)。

git config --global user.name "Firstname Lastname"
git config --global user.email "[email protected]"

姓名应为您的真实姓名,而不是您的 GitHub 用户名。使用您用于 GitHub 帐户的电子邮件(参见 下方)。

(可选) 配置 Git 设置

此步骤不是必需的,但它可以使在命令行上使用 git 更容易。

这些全局选项(即应用于所有仓库)位于 ~/.gitconfig 中。如果需要,您可以编辑此文件以启用一些方便的快捷方式

[user]
    name = Firstname Lastname
    email = your_email@youremail.com

# Some helpful aliases to save on typing
[alias]
    ci = commit
    di = diff --color-words
    st = status
    co = checkout
    log1 = log --pretty=oneline --abbrev-commit
    logs = log --stat

参见 https://git.js.cn/book/sv/v2/Customizing-Git-Git-Configuration 获取一些更常见的 git 配置选项。

设置 GitHub

接下来,您需要设置您的 GitHub 帐户。请注意,此处的所有步骤只需要执行一次。如果您已经拥有 GitHub 帐户并且已经设置了 SSH 密钥,即使是用于与 SymPy 不同的项目,您也不需要再次执行这些步骤。

创建 GitHub 帐户

要为 SymPy 做出贡献,需要 GitHub 帐户。如果您还没有,请在 https://github.com/join 注册。您的 GitHub 帐户是您在开源世界中的存在,因此我们建议您选择一个专业的用户名。

设置 SSH 密钥

要建立您计算机与 GitHub 之间的安全连接,请参见 https://githubdocs.cn/get-started/getting-started-with-git/set-up-githttps://githubdocs.cn/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account 中的详细说明。

如果您在使用 SSH 访问 GitHub 时遇到任何问题,请阅读 https://githubdocs.cn/authentication/troubleshooting-ssh 中的故障排除说明,或在 邮件列表 上向我们提问。

派生 SymPy

在 GitHub 上创建您自己的 SymPy 项目的派生。如果您之前已经执行过此操作,则无需再次执行。

转到 SymPy GitHub 仓库 并单击派生按钮。

现在您拥有了 SymPy 项目的自己的仓库。派生项目的地址将类似于 https://github.com/<your-github-username>/sympy,其中 <your-github-username> 是您的 GitHub 用户名。

获取 SymPy 代码

建议您为开发目的创建 SymPy 项目的派生。创建您自己的 SymPy 项目的派生(如果您还没有)。转到 SymPy GitHub 仓库

https://github.com/sympy/sympy

现在您将在 https://github.com/<your-user-name>/sympy 处有一个派生。

然后,在您的机器上浏览到您想要存储 SymPy 的位置,并克隆(下载)SymPy 原始仓库中的最新代码(约 77 MiB)

$ git clone https://github.com/sympy/sympy

然后将您的读写仓库分配给一个名为“github”的远程仓库(将 <your-github-username> 替换为您的 GitHub 用户名)

git remote add github git@github.com:<your-github-username>/sympy.git

有关 GitHub 派生和调整的更多信息,请参见: https://githubdocs.cn/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requestshttps://githubdocs.cn/pull-requests/collaborating-with-pull-requests/working-with-forks/fork-a-repohttps://githubdocs.cn/get-started/quickstart/set-up-git

配置完成后,您的设置应类似于以下内容

$ git remote -v
origin   https://github.com/sympy/sympy (fetch)
origin   https://github.com/sympy/sympy (push)
github https://github.com/<your-github-username>/sympy (fetch)
github https://github.com/<your-github-username>/sympy (push)

虚拟环境设置

您可能希望利用虚拟环境来隔离您的开发版 SymPy 与任何系统范围的安装版本,例如来自 apt-get install python-sympy

如果您使用 conda,您可以使用它来创建虚拟环境

$ conda create -n sympy-dev -c conda-forge --file requirements-dev.txt

如果您更喜欢使用 pipvenv,您可以使用类似以下内容

cd sympy
python -m venv .venv
source .venv/bin/activate
pip install -r requirements-dev.txt

您可以向此命令中添加任何其他您可能会发现对您的贡献有用的包,例如 可选依赖项

现在您有一个可以用来测试您的开发版 SymPy 的环境。

现在激活环境

$ conda activate sympy-dev