GitHubのリポジトリをZenodoと連携する
概要
先日、Mirador3でアノテーションを比較するためのプラグインを公開しました。
今回は、このリポジトリをZenodoと接続してみます。
結果、releaseを行うたびに、自動的にDOIが付与されるようになりました。
Zenodoでの設定
以下にアクセスして、連携対象のGitHubリポジトリを選択します。
/account/settings/github/
GitHub
以下、必須ではありませんが、Zenodoとの連携に向けて、GitHubリポジトリ上で必要な準備を行います。
CITATION.cffの作成
これを作成することにより、CreatorsにORCIDのIDが表示されるようでした。
具体的には、以下のようなファイルを作成します。
cff-version: 1.1.0
message: "Cite as"
authors:
- family-names: Nakamura
given-names: Satoru
orcid: https://orcid.org/0000-0001-8245-7925
affiliation: "The University of Tokyo"
website: https://researchmap.jp/nakamura.satoru?lang=en
title: "mirador-compare-plugin"
doi: 10.5281/zenodo.10449856
上記により、GitHubリポジトリ上にも「Cite this repository」が表示されるようになりました。
バッジの表示
以下が参考になりました。
以下のURLにアクセスして、id
を取得します。今回は、664611010
でした。
https://api.github.com/repos/nakamura196/mirador-compare-plugin
このid
を使用して、README.mdに以下を追加します。
[![DOI](https://zenodo.org/badge/664611010.svg)](https://zenodo.org/badge/latestdoi/664611010)
結果、以下のようにバッジが表示されました。
READEME.mdへのCite asの追加
ResearchObject/ro-crate-py を参考に、READEME.mdへCite asを追加してみます。
この時、以下に記載があるIDを用いることで、最新のバージョンに遷移するURLを作成することができました。
具体的には、今回は10449856
というIDを使って、READMEに追記する内容を作成しました。
[![DOI](https://zenodo.org/badge/664611010.svg)](https://zenodo.org/badge/latestdoi/664611010)
The above DOI corresponds to the latest versioned release as [published to Zenodo](https://zenodo.org/records/10449856), where you will find all earlier releases. To cite `mirador-compare-plugin` independent of version, use https://doi.org/10.5281/zenodo.10449856, which will always redirect to the latest release.
リリースの作成
プルリクエストとマージ
ブランチの作成
git checkout -b [新しいブランチ名]
プッシュ後に以下を実行する
gh pr create
gh pr list
gh pr merge [PR番号またはURL]
リリース
npm version patch
git push origin v0.1.12
gh release create v0.1.12 --title "Version 0.1.12"
上記においてWrite using generated notes as template
を選択すると、以下のような文章を自動的に作成してくれます。
Zenodo
以下のように、ページが作成されました。
TitleとCreatorsは、CITATION.cff
の値が使用されるようでした。
CITATION.cffが未登録の場合、以下のように表示されていました。GitHubのリポジトリ名やユーザ名がそのまま表示されています。
CITATION.cff登録後は、以下のようにORCID IDやaffiliationsを含めて登録されました。
まとめ
ZenodoとGitHubが高度に連携されていることが確認できました。学術論文等におけるソフトウェアの引用がより行いやすくなるように思いました。
参考になりましたら幸いです。
Discussion