Skip to content
swordysrepo edited this page Dec 23, 2021 · 22 revisions

Required Libraries

Running this project

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:

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

Other requirements for this project

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>"

#---------------------------------------------------------------
Clone this wiki locally