Skip to main content

My short description for my project.

Project description

Tests Documentation Status

git2net

git2net is an Open Source Python package that facilitates the extraction of co-editing networks from git repositories.

Download and installation

git2net is pure python code. It has no platform-specific dependencies and thus works on all platforms. The only requirement is a version of git >= 2.0. Assuming you are using pip, you can install latest version of git2net by running:

> pip install git2net

This also installs the necessary dependencies. git2net depends on the python-Levenshtein package to compute Levenshtein distances for edited lines of code. On sytems running Windows, automatically compiling this C based module might fail during installation. In this case, unofficial Windows binaries can be found here, which might help you get started.

How to use git2net

Tutorials

After installation, we suggest to check out our tutorials, detailing how to get started using git2net. We provide tutorials covering different aspects of analysing your repository with git2net. You can directly interact with the notebooks in Binder, or view them in NBViewer via the badges below.

Binder NBViewer

In addition, we provide links to the individual tutorial notebooks below:

Tutorial Binder Google Colab NBViewer
1. Cloning a repository for analysis Binder Open Cloning Tutorial In Google Colab NBViewer
2. Mining git repositories with git2net Binder Open Mining Tutorial In Google Colab NBViewer
3. Author disambiguation with gambit Binder Open Disambiguation Tutorial In Google Colab NBViewer
4. Network analysis with pathpy Binder Open Network Tutorial In Google Colab NBViewer
5. Database-based analyses Binder Open Database Tutorial In Google Colab NBViewer
6. Computing file complexity git2net Binder Open Database Tutorial In Google Colab NBViewer

Documentation

git2net's documentation is available at git2net.readthedocs.io.

Usage examples

We have published some motivating results as well as details on the mining algorithm in "git2net - Mining Time-Stamped Co-Editing Networks from Large git Repositories".

In "Analysing Time-Stamped Co-Editing Networks in Software Development Teams using git2net", we use git2net to mine more than 1.2 million commits of over 25,000 developers. We use this data to test a hypothesis on the relation between developer productivity and co-editing patterns in software teams.

Finally, in "Big Data = Big Insights? Operationalising Brooks' Law in a Massive GitHub Data Set", we mine a corpus containing over 200 GitHub repositories using git2net. Based on the resulting data, we study the relationship between team size and productivity in OSS development teams. If you want to use this extensive data set for your own study, we made it publicly available on zenodo.org.

DOI

How to cite git2net

@inproceedings{gote2019git2net,
  title={git2net: {M}ining time-stamped co-editing networks from large git repositories},
  author={Gote, Christoph and Scholtes, Ingo and Schweitzer, Frank},
  booktitle={Proceedings of the 16th International Conference on Mining Software Repositories},
  pages={433--444},
  year={2019},
  organization={IEEE Press}
}

@article{gote2021analysing,
  title={Analysing time-stamped co-editing networks in software development teams using git2net},
  author={Gote, Christoph and Scholtes, Ingo and Schweitzer, Frank},
  journal={Empirical Software Engineering},
  volume={26},
  number={4},
  pages={1--41},
  year={2021},
  publisher={Springer}
}

License

This software is licensed under the GNU Affero General Public License v3 (AGPL-3.0).

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

git4net-0.0.2.tar.gz (51.8 kB view details)

Uploaded Source

Built Distribution

git4net-0.0.2-py3-none-any.whl (45.3 kB view details)

Uploaded Python 3

File details

Details for the file git4net-0.0.2.tar.gz.

File metadata

  • Download URL: git4net-0.0.2.tar.gz
  • Upload date:
  • Size: 51.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for git4net-0.0.2.tar.gz
Algorithm Hash digest
SHA256 233912edaf727b2bba7561389a2c505c463156132a72fc93c6913ac4187af327
MD5 59348147ab76d8a85210a32ecd5d571c
BLAKE2b-256 2cef119f628c172c5333b507237320770ecc0ec47c28dba6ec6fba19f4dd5b2b

See more details on using hashes here.

File details

Details for the file git4net-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: git4net-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 45.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for git4net-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 0bc48abfd0d3216d65816b114a4aa27e75b26a6c461e8f166481a43b132b0313
MD5 96a2f749be98d20e754876a4b4be5199
BLAKE2b-256 089ae508698da4361bc4bc6d3335b33bc516a2fe990230958e4cd73206d4434a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page