Skip to main content

A powerful collection of Git repository analysis tools and visualizations.

Project description

GitInsight

GitRepository Analysis and Visualization Tool / Git 仓库分析与可视化工具

MIT License

Python Version


目录

上手指南

开发前的配置要求
  1. Python >= 3.12
  2. uv (推荐使用 uv 进行包管理) 或 pip
安装步骤
  1. Clone the repo
git clone https://github.com/Rain-kl/GitInsight.git
cd GitInsight
  1. Install as a command-line tool
# Install from PyPI
uv tool install gitinsight-cli

# Install from the current checkout
uv tool install .

# Or install directly from GitHub
uv tool install git+https://github.com/Rain-kl/GitInsight.git
  1. Run the tool
gitinsight /path/to/git/repository

Upgrade or uninstall the tool:

uv tool upgrade gitinsight-cli
uv tool uninstall gitinsight-cli

For local development:

uv sync
uv run gitinsight /path/to/git/repository

文件目录说明

GitInsight
├── .github/             # GitHub 配置
├── gitinsight/          # 源代码目录
│   ├── __init__.py
│   ├── __main__.py      # 程序入口
│   ├── analysis.py      # 分析逻辑 (Pandas)
│   ├── charts.py        # 图表绘制 (Pyecharts)
│   ├── dashboard.py     # 仪表盘展示
│   ├── git_reader.py    # Git日志读取
│   └── report.py        # 报告生成
├── .gitignore
├── pyproject.toml       # 项目配置与依赖
├── uv.lock              # 依赖锁定文件
└── README.md            # 项目说明

开发的架构

本项目主要由数据读取、数据分析、图表生成和仪表盘展示四个部分组成。

  • git_reader.py: 负责读取 Git 仓库的提交日志。
  • analysis.py: 使用 Pandas 对日志数据进行清洗和统计分析。
  • charts.py: 使用 Pyecharts 生成各类可视化图表。
  • dashboard.py: 整合图表生成 HTML 仪表盘。

请阅读架构文档(如有)查阅为该项目的架构。

部署

本项目为 Python 命令行工具,可直接本地运行或打包发布到 PyPI。 暂无特殊部署部署。

使用到的框架

  • Pandas - Data structures and analysis tools
  • Pyecharts - Python Echarts Plotting Library
  • Loguru - Python logging made (stupidly) simple
  • Hatchling - Modern, extensible Python build backend

贡献者

请阅读CONTRIBUTING.md 查阅为该项目做出贡献的开发者。

如何参与开源项目

贡献使开源社区成为一个学习、激励和创造的绝佳场所。你所作的任何贡献都是非常感谢的。

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gitinsight_cli-0.1.0.tar.gz (50.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gitinsight_cli-0.1.0-py3-none-any.whl (26.7 kB view details)

Uploaded Python 3

File details

Details for the file gitinsight_cli-0.1.0.tar.gz.

File metadata

  • Download URL: gitinsight_cli-0.1.0.tar.gz
  • Upload date:
  • Size: 50.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.11 {"installer":{"name":"uv","version":"0.9.11"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for gitinsight_cli-0.1.0.tar.gz
Algorithm Hash digest
SHA256 96a56f803a150065877740a07597e77f2ee20518c8fd222ff5b2d098d44b7332
MD5 6cab95a589edc554cc3a6a1547bb7698
BLAKE2b-256 e9864a2479e5168d8b4dbcc88041fb79548e3a73946e0fa38be7c7ccea11ddba

See more details on using hashes here.

File details

Details for the file gitinsight_cli-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: gitinsight_cli-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 26.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.11 {"installer":{"name":"uv","version":"0.9.11"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for gitinsight_cli-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0adfa43ea0fed8ca40c4d3b189cfe17599de437f347108a52ca15c80c1301150
MD5 c2f499565461c1a9850c636ff8a88446
BLAKE2b-256 38686ec703e1f1400855072fd41db7414450d64bec441a2ac471ea74ab4eb79d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page