CLIME - Commits Extractor
Project description
CLIME Commits
A tool to extract and compute the lines of code (LOC), thousands of lines of code (KLOC), delta lines of code (DLOC), and delta thousands of lines of code (DKLOC) of a Git repository per commit
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
--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
Built Distribution
File details
Details for the file clime-commits-0.11.3.tar.gz
.
File metadata
- Download URL: clime-commits-0.11.3.tar.gz
- Upload date:
- Size: 9.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.9.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ba408c539a21d0f068306f55d881c2f25e17907cb9890c58981d5c0a444b4b5b |
|
MD5 | 894f15bd17251dd37d4800cd246f505b |
|
BLAKE2b-256 | 8b0ff45ead7637856727135bfa6de9c21d0ad875ccfa81b03d066d2fabcfb287 |
File details
Details for the file clime_commits-0.11.3-py3-none-any.whl
.
File metadata
- Download URL: clime_commits-0.11.3-py3-none-any.whl
- Upload date:
- Size: 9.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.9.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5e88ed4de2ef1788d5b15cbad71c373913bfeae06fd04d1889c33c6adf295446 |
|
MD5 | ddf15fd4ef27aa396ee7b75a83f378ef |
|
BLAKE2b-256 | 8db00dc176d50e5ae6a3c03ac3c90e8332bdd0680ad268fcc6b6f88065fb1309 |