This is a Java application that analyzes a GitHub repository. It fetches data from a GitHub repository and performs two types of analysis:
- Finds pairs of contributors who have worked on the same file.
- Analyzes the contributions of contributors in the last week.
- Java 8 or higher
- Maven
- GitHub Personal Access Token
- Clone the repository using
git clone https://github.com/RaresPopa04/GithubAnalyzer.git
. - Navigate to the cloned folder
cd GithubAnalyzer
. - Navigate to the
demo
directory usingcd demo
. - Set your GitHub Personal Access Token as an environment variable named
GITHUB_TOKEN
. You can do this by usingecho GITHUB_TOKEN=your_github_token_here > .env
(do not forget to replace the token value). - Build the application using the command
mvn clean package
. - After a successful build, a
github-analyzer-1.0-SNAPSHOT.jar
file will be generated in thetarget
directory. - Run the application using the command
java -cp "target/classes;target/dependency/*" example.App
.
The app runs only in the terminal.
- The user is prompted with a message, where he needs to insert the name of the owner of the repository, next step is to insert the name of the repository.
- The users needs to choose between 2 options of analytics on the specified repository.
- For the first option, the tool will output the top 10 most common modifications between pairs of users.
- For the second option, for each of the contributors, it will output the number of lines written, commits, merge requests and the max length of a comment to a merge request in the last week.