RCGraph is used to construct Temporal Knowledge Graph for the Readme file of a GitHub repository. Readme files of the projects serves as an important source of information corresponding to the project such as the dependencies involved, methodology followed and so on. Assessing changes in readme files could provide insights on evolution of the project and consequently could help in modifying the underlying environment or dependencies to work with the project. Linking the readme files with time stamp of changes made to the readme files and further querying the linked data could help in assessing changes in readme files. Generating a temporal knowledge graph specific to readme files could thus link the readme with temporal changes and consequently ease the querying of readme.
Create and activate a new python3 virtual environment:
python(3) -m venv
<path_to_env/env_name></path_to_env>
Clone or download this github repository:
git clone
https://github.com/rishalab/github-kg.git
Get into the main directory:
cd github-kg
Download standard-core-nlp-4.3.0 from this Drive Link . Place this folder in the root directory of this tool.
Install the requirements:
pip install -r requirements.txt
Generate Knowledge Graph:
python(3) main.py "<username/reponame>"
RCGraph constructs a Temporal Knowledge Graph on Readme File of a GitHub repository. It first constructs a Knowledge Graph on the present Readme file of the given repository. Then, individual Knowledge Graphs are constructed on changes made by each commit. These individual Knowledge Graphs are combined to obtain the commit based Knowledge Graph.
To construct a Temporal Knowledge Graph Tuple, the tuples present in Readme KG are mapped to equivalent tuple present in Commits KG. Using this mapping, the corresponding commit timestamp and commit SHA are extracted and embedded into the Readme KG tuple to construct the resultant Temporal KG tuple.
Akhila Sri Manasa Venigalla - Mir Sameed Ali - Nikhil M - Sridhar Chimalakonda
Preprint