为你的项目分配一个Doi,建立GitHub与Zenodo的连接

数字对象唯一标识符(DOI)是数据和项目代码的身份证,针对数字产品。

作用:为你的数据找一个存储库,数据存储库将会为你的数据生成一个数字对象唯一标识(DOI).许多大学正在为研究人员提供研究数据和软件管理以及合规要求方面的支持,这些服务通常是通过图书馆提供的。图书馆员可以是研究数据管理支持的优秀来源,包括存储库选择,并且可以帮助您遵守资助者,出版商和大学的要求.世界上或者特别国家也提供了非盈利性的数据存储库。为小容量数据提供免费存储。常见的存储库有:Zenodo、Dryad或Figshare。Dryad对美国国家科学基金会资助的作者收取费用。

1、注意

(1)gituhub上的数据是公开的,zenodo只能访问公开的数据。

(2)如果您希望归档属于某个组织的存储库,则组织所有者可能需要批准Zenodo应用程序的访问权限。

(3)确保在您的存储库中包含许可,以便读者知道如何重用您的作品。

2、获取DOI步骤

(1)登录zenodo(login page)账号,用GitHub账号登录,Click Log in with GitHub.

(2)、后面按照页面点击操作即可成功完成登录。

        Review the information about access permissions, then click Authorize zenodo.

(3)对于以后新建的仓库,zenodo会自动下发一个doi,而对于已经创建好的仓库,需要去获取doi,下面我将介绍如何为已 创建的仓库获取doi。Navigate to the Zenodo GitHub page.然后按照下图(To the right of the name of the repository you want to archive, toggle the button to On

(4)点击上图中的create a release,进入获取doi的教程,或者安装我的步骤 create a release

        1) 进入自己的仓库中(点击头像,然后点击Your repositories)

        2)点击仓库右边的release

        3),点击create a new release

        4)  完善下图的细节,各个部分的问题描述如下(引自 Managing releases in a repository

特别注意:********下图中Target中main是自己项目所在的分支,并不是所有人的都是main

  1. To choose a tag for the release, select the Choose a tag dropdown menu.

    • To use an existing tag, click the tag.
    • To create a new tag, type a version number for your release, then click Create new tag.
  2. If you created a new tag, select the Target dropdown menu, then click the branch that contains the project you want to release.

  3. Optionally, above the description field, select the Previous tag dropdown menu, then click the tag that identifies the previous release.

  4. In the "Release title" field, type a title for your release.

  5. In the "Describe this release" field, type a description for your release. If you @mention anyone in the description, the published release will include a Contributors section with an avatar list of all the mentioned users. Alternatively, you can automatically generate your release notes by clicking Generate release notes.

  6. Optionally, to include binary files such as compiled programs in your release, drag and drop or manually select files in the binaries box.

  7. Optionally, to notify users that the release is not ready for production and may be unstable, select This is a pre-release.

  8. Optionally, select Set as latest release. If you do not select this option, the latest release label will automatically be assigned based on semantic versioning.

  9. Optionally, if GitHub Discussions is enabled for the repository, create a discussion for the release.

    • Select Create a discussion for this release.
    • Select the Category dropdown menu, then click a category for the release discussion.
  10. If you're ready to publicize your release, click Publish release. To work on the release later, click Save draft. You can then view your published or draft releases in the releases feed for your repository. For more information, see "Viewing your repository's releases and tags."

        5)经过上述后,我们已经在GigHub上发布了自己的项目或者代码等,不出意外的话就会在Zenodo GitHub了

        6)获得DOI

点进到项目中并click Edit后进入下面的页面,填写自己项目的基本信息,完成后,click Pubish

7) 返回到Zenodo GitHub页面就能看到自己的DOI了,Over!!!!

3、要想删除或者重新编辑你的项目,请参考这个Managing releases in a repository - GitHub Docs教程

03-14
### Zenodo 项目简介 Zenodo一个开源平台,旨在支持研究人员共享和存档他们的研究成果[^1]。该平台允许用户上传各种类型的文件,包括研究论文、数据集、软件和其他学术成果,并提供永久的 DOI (Digital Object Identifier),以便于引用和访问。 #### Zenodo 的核心功能 - **开放获取**:所有存储在 Zenodo 上的内容都可以被公开访问。 - **版本控制**:支持对同一作品的不同版本进行管理。 - **DOI 提供**:每项提交都会获得唯一的 DOI,便于长期引用。 - **多学科覆盖**:适用于任何学科的研究成果。 ### Zenodo 的目录结构组件说明 Zenodo 的代码库按照模块化设计原则构建,主要分为以下几个部分[^2]: - `invenio`:负责元数据处理的核心框架。 - `modules`:实现特定功能的插件集合,例如用户认证、文件上传等。 - `tests`:单元测试脚本用于验证系统的稳定性和功能性。 - `docs`:官方文档以及开发人员指南的位置。 对于想要深入理解其内部运作机制或者贡献代码的人来说,熟悉这些目录是非常重要的。 ### 如何通过命令行工具上传大文件至 Zenodo 当面对较大的科研数据时,可以利用 curl 和 jq 这样的轻量级命令行工具来完成自动化上传流程[^3]: ```bash #!/bin/bash # 设置变量 ACCESS_TOKEN="your_access_token_here" TITLE="Example Dataset Title" UPLOAD_URL="https://sandbox.zenodo.org/api/deposit/depositions" # 创建新的草稿记录 response=$(curl -H "Content-Type: application/json" \ -X POST "$UPLOAD_URL?access_token=$ACCESS_TOKEN" \ --data '{"metadata":{"title":"'$TITLE'","upload_type":"dataset"}}') # 获取 deposition_id deposition_id=$(echo $response | jq '.id') # 添加文件到记录中 filename="large_file.zip" curl -X POST "$UPLOAD_URL/$deposition_id/files?access_token=$ACCESS_TOKEN" \ -F "file=@$filename" # 发布记录 curl -X POST "$UPLOAD_URL/$deposition_id/actions/publish?access_token=$ACCESS_TOKEN" ``` 上述脚本展示了如何创建一个新的沉积物条目、附加文件并最终发布它。注意替换其中占位符为你自己的实际参数值。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值