five

github_data_commits

收藏
Hugging Face2025-12-09 更新2025-12-10 收录
下载链接:
https://huggingface.co/datasets/CarlosJefte/github_data_commits
下载链接
链接失效反馈
官方服务:
资源简介:
该数据集包含与代码仓库相关的信息,如仓库名称、提交消息、文件更改和依赖项变更。特征包括各种元数据,如星标数、分叉数和时间戳,以及关于文件更改和依赖项修改的详细信息。数据集被划分为一个单一的'train'分块,包含指定数量的示例和字节。
创建时间:
2025-12-02
原始信息汇总

数据集概述

基本信息

  • 数据集名称: CarlosJefte/github_data_commits
  • 来源平台: Hugging Face Datasets
  • 数据量: 73,050.9 MB
  • 下载大小: 231.5 MB
  • 示例数量: 35,461 条
  • 数据分割: 仅包含训练集(train)

数据结构与特征

数据集包含以下字段:

仓库与提交标识信息

  • sha: 提交的哈希值(字符串类型)
  • repo_name: 仓库名称(字符串类型)
  • original_repo_id: 原始仓库ID(整型)
  • default_branch: 默认分支名称(字符串类型)

仓库元数据

  • is_ml: 是否为机器学习仓库标识(整型)
  • stargazers_count: 星标数量(整型)
  • forks_count: 分支数量(整型)
  • created_at: 仓库创建时间(字符串类型)

提交信息

  • message: 提交信息(字符串类型)
  • author: 提交作者(字符串类型)
  • date: 提交日期(字符串类型)

文件变更详情

  • files_changed: 变更文件列表
    • filename: 文件名(字符串类型)
    • patch: 补丁内容(字符串类型)
    • status: 文件状态(字符串类型)

依赖变更分析

  • added_imports: 新增的导入语句列表(字符串列表)
  • removed_imports: 移除的导入语句列表(字符串列表)
  • dependency_changes: 依赖变更列表
    • filename: 文件名(字符串类型)
    • patch: 补丁内容(字符串类型)
    • status: 文件状态(字符串类型)
  • last_dependencies_change: 最后一次依赖变更的时间戳(浮点型)

数据配置

  • 配置名称: default
  • 数据文件路径: data/train-*
搜集汇总
数据集介绍
main_image_url
构建方式
在开源软件工程领域,github_data_commits数据集通过系统化采集GitHub平台上的代码提交记录构建而成。该数据集以提交哈希值为核心标识,整合了仓库元数据、提交消息、作者信息及文件变更详情,并特别标注了与机器学习相关的仓库属性。构建过程中,数据提取覆盖了代码依赖变更、导入语句增减等关键维度,确保了提交历史的完整性与可追溯性,为深入分析开发行为提供了结构化基础。
特点
该数据集的核心特点在于其多维度的代码变更表征能力,不仅包含传统的提交元数据,还精细记录了文件级别的修改补丁、依赖库变动及导入语句的增删细节。数据集特别引入了机器学习仓库标识字段,支持针对ML项目的定向分析。其结构化设计将提交、文件、依赖等多层信息有机整合,既保留了原始代码变更的完整性,又通过标准化字段提升了数据的可处理性与研究适用性。
使用方法
研究人员可利用该数据集进行软件演化、开发模式识别及代码质量评估等实证研究。通过解析文件变更记录与依赖更新信息,能够追踪技术债务积累或库迁移趋势。在机器学习工程领域,结合is_ml标识可专项分析ML项目的开发实践特征。数据集以标准表格格式提供,支持直接加载至数据分析框架,便于进行时间序列分析、关联挖掘或构建预测模型,为软件工程研究提供丰富的实证基础。
背景与挑战
背景概述
GitHub作为全球最大的开源代码托管平台,其丰富的提交历史为软件工程研究提供了宝贵的数据资源。github_data_commits数据集聚焦于代码提交行为分析,旨在探索软件开发过程中的模式与演化规律。该数据集由研究机构或团队构建,核心研究问题涉及机器学习项目识别、依赖管理变更以及代码演化追踪,对软件维护、质量评估及开发者行为研究产生了显著影响,推动了数据驱动的软件工程方法发展。
当前挑战
该数据集旨在解决代码变更分析与软件演化研究中的挑战,包括准确识别机器学习项目、追踪依赖库的动态变化以及理解提交消息的语义内涵。构建过程中面临数据规模庞大带来的处理复杂度,需高效解析Git提交记录并提取结构化特征;同时,确保数据质量与一致性涉及去噪、对齐时间戳及处理异构代码格式等难题,这些因素共同构成了数据集构建与应用的核心障碍。
常用场景
经典使用场景
在软件工程与机器学习交叉领域,github_data_commits数据集为研究者提供了丰富的代码变更历史记录。该数据集常用于分析开源项目中提交行为的模式,特别是针对机器学习相关仓库的演化过程。通过追踪文件修改、依赖更新及导入语句的增减,研究人员能够深入探究开发者在实际编码中的决策逻辑,从而揭示软件维护与迭代的内在规律。
解决学术问题
该数据集有效解决了软件工程中关于代码演化与维护的若干核心问题。它使得学者能够量化分析依赖管理的动态变化,识别机器学习项目中常见的技术债务积累模式。同时,通过关联提交信息与仓库元数据,研究者可以评估团队协作效率对项目健康度的影响,为构建更稳健的软件生命周期理论提供了实证基础。
衍生相关工作
围绕该数据集衍生的经典工作包括基于提交序列的缺陷预测模型、依赖冲突自动检测框架以及代码变更影响分析算法。这些研究不仅推动了软件仓库挖掘领域的理论发展,还催生了如CommitBERT等预训练模型,为代码智能理解任务提供了新的方法论范式。
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作