GitHub 引用生成器
粘贴一个 GitHub 仓库网址,即可获得该软件的 APA 第 7 版、MLA 第 9 版和芝加哥格式第 18 版引用,以及 BibTeX 与 biblatex 条目。若仓库含有 CITATION.cff 文件,工具会读取它,包括 Zenodo DOI 以及作者要求改为引用的其他成果;若没有,则读取 GitHub 的仓库信息。每个字段都可以编辑。免费,无需注册。
软件信息
本工具通过 GitHub 的 API 读取仓库的公开信息,若有 CITATION.cff 文件也一并读取。仅会将仓库地址发送至 GitHub。
个人姓名写作 First Last 或 Last, First。诸如 The pandas development team 这类团体名称会保持完整;其他团体名称请用花括号括起,例如 {Mozilla}。
与开发者的写法完全一致,包括大小写。
您所使用版本的发布日期。若没有,请留空。
仓库填 GitHub;若该版本已在 Zenodo 或其他存档平台获得 DOI,则填写该平台。
您的引用
查找一个仓库,或输入软件名称,即可查看您的引用。
如何使用 GitHub 引用生成器
- 1. 粘贴仓库地址,然后点击“查找”。 任何形式都可以:https://github.com/owner/repository、仓库内某个文件的链接,或仅 owner/repository。
- 2. 检查已填写的内容。 从 CITATION.cff 中可以获得开发者选定的作者、标题、版本、发布日期和 DOI。若没有该文件,GitHub 只能提供账户名称和最新发布版本——如果项目列出了真实作者,请补充真实作者。
- 3. 保留 DOI。 当发布版本存档于 Zenodo 或其他仓库时,其 DOI 是永久有效的,所有样式都优先使用它,而不是 GitHub 地址。
- 4. 复制您的引用。 如果 CITATION.cff 指明了需要引用的论文,其引用会排在软件的引用之后——许多项目要求两者都引用。
CITATION.cff 文件提供的信息
CITATION.cff 是位于仓库根目录的一个小型 YAML 文件,以 Citation File Format(1.2.0 版)的格式说明应如何引用该软件。GitHub 会读取它,显示带有 APA 和 BibTeX 的“Cite this repository”按钮;本工具读取的也是同样的键:
| CITATION.cff 键名 | 包含的内容 | 用于何处 |
|---|---|---|
authors | 个人(family-names、given-names)或团体(name) | 作者项 |
title | 软件名称 | 斜体标题,保留原有大小写 |
version, date-released | 您所引用的发布版本 | 版本与日期 |
doi, identifiers | DOI,通常来自 Zenodo | 链接——优先于网址 |
repository-code | 仓库地址 | 没有 DOI 时使用的网址 |
preferred-citation | 应改为引用的论文或其他成果 | 第二组引用 |
在 APA、MLA 和芝加哥格式中引用软件
APA 第 7 版(§10.10)将软件的版本号放在括号中,并在标题之后加上说明 [Computer software],然后是发布方及 DOI 或网址。APA 没有 GitHub 的示例,因此除非该版本存档在其他平台,否则以 GitHub 作为发布方。MLA 第 9 版依据其核心要素构建条目;MLA 风格中心关于引用源代码的文章将仓库所有者视为作者,完整保留软件名称的大小写,给出版本号,并在网址之前把 GitHub 作为第二容器。芝加哥格式第 18 版(§14.169)在参考书目中将软件列在其开发者名下,并附上版本号和发布方。在 BibTeX 中,经典的 @misc 没有版本字段,因此版本号写入 note;biblatex 则有真正的 @software 类型。
GitHub 引用示例
Citation File Format 规范本身的 CITATION.cff 列出了九位作者、1.2.0 版、2021 年 8 月 9 日的发布日期以及一个 Zenodo DOI:
APA 第 7 版
参考文献列表:
Druskat, S., Spaaks, J. H., Chue Hong, N., Haines, R., Baker, J., Bliven, S., Willighagen, E., Pérez-Suárez, D., & Konovalov, O. (2021). Citation File Format (Version 1.2.0) [Computer software]. Zenodo. https://doi.org/10.5281/zenodo.5171937
文内引用:
(Druskat et al., 2021)
MLA 第 9 版与芝加哥格式第 18 版
MLA Works Cited:
Druskat, Stephan, et al. Citation File Format. Version 1.2.0, Zenodo, 9 Aug. 2021, https://doi.org/10.5281/zenodo.5171937.
芝加哥脚注:
Stephan Druskat et al., Citation File Format, version 1.2.0 (Zenodo, 2021), https://doi.org/10.5281/zenodo.5171937.
芝加哥参考书目:
Druskat, Stephan, Jurriaan H. Spaaks, Neil Chue Hong, et al. Citation File Format. Version 1.2.0. Zenodo, 2021. https://doi.org/10.5281/zenodo.5171937.
biblatex
@software:
@software{druskat2021citation,
author = {Druskat, Stephan and Spaaks, Jurriaan H. and Chue Hong, Neil and Haines, Robert and Baker, James and Bliven, Spencer and Willighagen, Egon and Pérez-Suárez, David and Konovalov, Olexandr},
title = {{Citation File Format}},
version = {1.2.0},
date = {2021-08-09},
publisher = {Zenodo},
doi = {10.5281/zenodo.5171937},
url = {https://github.com/citation-file-format/citation-file-format}
}Matplotlib 的 CITATION.cff 还要求用户引用 John D. Hunter 2007 年的论文。本工具同样会格式化该首选引用:
来自 CITATION.cff 的首选引用
APA 第 7 版:
Hunter, J. D. (2007). Matplotlib: A 2D graphics environment. Computing in Science & Engineering, 9(3), 90–95. https://doi.org/10.1109/MCSE.2007.55
BibTeX:
@article{hunter2007matplotlib,
author = {Hunter, John D.},
title = {{Matplotlib: A 2D graphics environment}},
journal = {Computing in Science \& Engineering},
volume = {9},
number = {3},
pages = {90--95},
year = {2007},
doi = {10.1109/MCSE.2007.55}
}仓库没有 CITATION.cff 时
若没有 CITATION.cff,工具会改用 GitHub 公开的仓库信息:以仓库名称作为标题,以所有者的账户作为作者,若存在最新发布版本,则使用其标签和日期。这只是一个起点,而非完整的引用:请在 README 或项目网站中查找作者,并引用您实际使用的版本。未登录时,GitHub 允许同一网络连接每小时发出 60 次 API 请求,而一次查找会使用一到两次;若达到上限,工具会告知何时重置,您也可以手动填写表单。如果您是该仓库的维护者,添加一个 CITATION.cff 可以使所有对它的引用保持一致。若引用的程序不在 GitHub 上,请参阅 软件与代码引用生成器。
常见错误
- 把账户名称当作作者。 “numpy”是一个账户;作者则是项目所列出的个人或团队。
- 遗漏版本号。 代码会在不同发布版本之间发生变化。请给出您所使用的版本、发布标签或提交记录。
- 有 DOI 时仍使用 GitHub 网址。 已存档发布版本的 DOI 不会因仓库迁移而失效。
- 忽略首选引用。 如果开发者要求您引用其论文,请引用它——通常与软件一并引用。
- “更正”软件名称的大小写。 pandas、NumPy 和 scikit-learn 都按其开发者的写法书写。
常见问题
- 如何用 APA 第 7 版引用 GitHub 仓库?
- 将其作为软件引用:作者、发布年份、斜体的名称、括号中的版本号、[Computer software]、发布方和链接。若没有存档,发布方为 GitHub,链接为仓库网址;若有 Zenodo DOI,则发布方为 Zenodo,链接为该 DOI。文内引用为:(Druskat et al., 2021)。
- 什么是 CITATION.cff 文件?
- 它是仓库根目录中的一个纯文本 YAML 文件,以 Citation File Format 的格式告诉人们应如何引用该软件。文件列出作者、标题、版本、发布日期和 DOI,并可指明应改为引用的论文。GitHub 会将它转换为“Cite this repository”按钮。
- 应该引用软件还是引用介绍它的论文?
- 请遵从 CITATION.cff 中开发者的要求。许多项目要求引用论文,而 Citation File Format 指南指出,软件与其他研究成果一样应当获得署名,因此同时引用两者很常见——论文用于说明方法,软件则用于说明您运行的版本。
- 如何获得 GitHub 仓库的 BibTeX 条目?
- 在此查找并复制条目:经典 BibTeX 使用 @misc,版本号写在 note 中;biblatex 则使用 @software。两者都用双重花括号包裹软件名称,以保留其大小写。
- 查找是否需要 GitHub 账户?
- 不需要。工具使用 GitHub 的公开 API,并直接从您的浏览器读取 raw.githubusercontent.com 上的 CITATION.cff 文件,只会发送仓库地址。未登录时,GitHub 每个连接每小时允许 60 次 API 请求,而一次查找会使用一到两次。
- 如果仓库是私有的或在 GitLab 上,该怎么办?
- 查找功能只能读取公开的 GitHub 仓库。对于其他情况,请将详细信息手动填入表单——引用的格式化方式相同——或使用 软件与代码引用生成器。