Skip to main content

SSL Metrics - Git Commits LOC Exploder

Project description

Software Systems Laboratory Metrics Git Commits Extractor

A python tool to extract commit information from a git repository

https://img.shields.io/badge/python-3.9.6%20%7C%203.10-blue DOI Release Project https://img.shields.io/badge/license-BSD--3-yellow

Table of Contents

About

The Software Systems Laboratory (SSL) GitHub Issue Spoilage Project is a python tool to extract commit information from a git repository.

This project is licensed under the BSD-3-Clause. See the LICENSE for more information.

Developer Tooling

To maximize the utility of this project and the greater SSL Metrics project, the following software packages are required:

Operating System

All tools developed for the greater SSL Metrics project must target Mac OS and Linux. SSL Metrics software is not supported or recommended to run on Windows but can be modified to do so at your own risk.

It is recomendded to develop on Mac OS or Linux. However, if you are on a Windows machine, you can use WSL to develop as well.

Python Tools

  • matplotlib
  • numpy
  • pandas
  • progress
  • python-dateutil
  • scikit-learn

Shell Tools

You will need the following shell software to run this application:

  • git
  • cloc
  • SLOCCount (optional)
  • jq

How To Use

Installation

You can install the tool via pip with either of the two following one-liners:

  • pip install --upgrade pip ssl-metrics-meta
  • pip install --upgrade pip ssl-metrics-git-commits-loc

Command Line Arguements

ssl-metrics-git-commits-loc-extract -h

options:
  -h, --help            show this help message and exit
  -d DIRECTORY, --directory DIRECTORY
                        Directory containg the .git folder of the repository
                        to analyze
  -b BRANCH, --branch BRANCH
                        Branch of the Git repository to analyze. DEFAULT: HEAD
  -o OUTPUT, --output OUTPUT
                        JSON file to store the data. DEFAULT:
                        ./commits_loc.json
  --cloc CLOC           TXT file containing cloc options. DEFAULT:
                        options.txt. NOTE: This is an internal options file
                        used by the program and doesn't need to be specified/
                        created by you the user (you)

ssl-metrics-git-commits-loc-graph -h

options:
  -h, --help            show this help message and exit
  -i INPUT, --input INPUT
                        JSON export from CLIME Git Commit Exploder. DEFAULT:
                        ./commits_loc.json
  -o OUTPUT, --output OUTPUT
                        Filename of the graph. DEFAULT: ./commits_loc.pdf
  -x X                  Key of the x values to use for graphing. DEFAULT:
                        author_days_since_0
  -y Y                  Key of the y values to use for graphing. DEFAULT:
                        lines_of_code
  --y-thousandths       Flag to divide the y values by 1000
  --type TYPE           Type of figure to plot. DEFAULT: line
  --title TITLE         Title of the figure. DEFAULT: ""
  --x-label X_LABEL     X axis label of the figure. DEFAULT: ""
  --y-label Y_LABEL     Y axis label of the figure. DEFAULT: ""
  --stylesheet STYLESHEET
                        Filepath of matplotlib stylesheet to use. DEFAULT:
                        style.mplstyle. NOTE: This is an internal stylesheet
                        used by the program and doesn't need to be specified/
                        created by you the user (you)

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

ssl-metrics-git-commits-loc-0.10.2.tar.gz (9.2 kB view details)

Uploaded Source

Built Distribution

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

ssl_metrics_git_commits_loc-0.10.2-py3-none-any.whl (9.2 kB view details)

Uploaded Python 3

File details

Details for the file ssl-metrics-git-commits-loc-0.10.2.tar.gz.

File metadata

File hashes

Hashes for ssl-metrics-git-commits-loc-0.10.2.tar.gz
Algorithm Hash digest
SHA256 b030c4e9f31afca12642e7cabe4ec2ec2143baffc2df6fe0699b8c8ecd2afb4d
MD5 b26c643465d38b868928ac833b6a4ece
BLAKE2b-256 45f815ecfc39773006d0ddd2f24d1433923ec7b3851af10d99347ab4ef6a7f11

See more details on using hashes here.

File details

Details for the file ssl_metrics_git_commits_loc-0.10.2-py3-none-any.whl.

File metadata

File hashes

Hashes for ssl_metrics_git_commits_loc-0.10.2-py3-none-any.whl
Algorithm Hash digest
SHA256 5ed6b1e2291ba62cbd5418e01c5144a45c75825d057639b82b52391a93cad96e
MD5 12f7d5f28c47f774a014b2c032350f89
BLAKE2b-256 bda95f551bda73ac4a7c5bfcb51cfb2fb737f18497dbdf05d95de41e80093c12

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