-
Notifications
You must be signed in to change notification settings - Fork 0
Home
swordysrepo edited this page Dec 23, 2021
·
22 revisions
- python version 3+
- pydriller https://pypi.org/project/PyDriller/
Run this project via a command-line that has access to a python3 installation, enter the project directory where stats.py file is located and run the command with the following options:
-
-exportCSV <path/to/file.csv>
-- directory and filename with csv file extension to export to -- required -
-start <m/d/y format date>
-- start date for querying GitHub repository (m/d/y format - if not declared all records will be returned) -- optional -
-end <m/d/y format date>
-- end date for querying GitHub repository (m/d/y format - if not declared all records will be returned) --optional -
-maxLines <int>
-- declare a maximum number of lines modified per tracked commit (default is 1000) -- optional -
-v
-- verbose output -- optional -
-nickname
-- enter the repository nickname set in config.py to use (this contains all of the data needed to target the correct repository) example:python3 stats.py -exportCSV /home/kartographia/file.csv -nickname BlueWave -end 12/1/2021 -start 11/1/2021 -v
You will need to create a config.py file that has the following stored in variables:
- The repository link you would like to track - variable String REPO_LINK
- The repository location on your file system - variable String LOCAL_PROJECT_DIRECTORY
- The directories you wish to ignore when adding up the "modified lines" count - list object IGNORE_DIRECTORY
- The list of nicknamed contributors and their relative GitHub Usernames - dictionary (key-value pairs) object CONTRIBUTORS
These will automatically be imported into the main script from your created config.py
file when running the simple command in the command-line.
See example config.py file below
#----------------------------------------------------------------
# the list of contributors and their relative github usernames
# Note: the key is the name that will be used in the report.
CONTRIBUTORS = {
"person1": ["person1GithubCommitUsername1","person1GithubCommitUsername2"],
"person2": ["person2GithubCommitUsername1"],
}
# where the current repository is located on your file system
LOCAL_PROJECT_DIRECTORY = "/home/<myusername>/<my main github directory>/<cloned repo folder>"
# The directories you wish to ignore for adding up lines changed
IGNORE_DIRECTORY = [".git", "temp", ".github", "target", "models", "data","lib"]
# the online url for the repository
REPO_LINK = "https://github.com/<username>/<repo>"
#---------------------------------------------------------------