Identify code ownership and knowledge risks in your repository.
Project details
checkOwners offers a way to determine who has knowledge of different parts of a codebase by analyzing git history and comparing it to the CODEOWNERS file. It emphasizes risk management over performance measurement, ensuring that teams know who to rely on for code reviews while maintaining data privacy.
checkOwners is a powerful tool designed for code ownership analytics, offering insights into the knowledge distribution across codebases by analyzing git history. It effectively identifies who is responsible for each part of a repository and compares this with the CODEOWNERS file, ensuring ownership accuracy.
This tool operates entirely offline—reading data from the local git setup without transmitting any information externally. The --offline mode guarantees no network connections are opened during its operation, thus emphasizing security and privacy.
Audit CODEOWNERS: Compare committed CODEOWNERS against the inferred ownership to verify alignment and accountability.
checkowners audit
Identify Drifts: Generate reports that highlight discrepancies between file ownership and historical data.
checkowners drift
Generate CODEOWNERS File: Automatically create a CODEOWNERS file from the historical commit data to streamline responsibilities.
checkowners generate
Assess Knowledge Risk: Rank file paths based on associated knowledge risk to understand potential vulnerabilities in code reviews.
checkowners risk
Review Suggestions: Easily determine who should review proposed changes by analyzing git diffs.
checkowners suggest --diff main...HEAD
For precise command usage and additional configurations, refer to the usage guide.
Integrate checkOwners into CI workflows to automate ownership checks during pull requests:
```yaml
name: checkowners
on: [pull_request]
jobs:
drift:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: smusali/checkowners@v0
```
checkOwners is established as a must-have tool for project managers and teams who prioritize accountability and knowledge distribution in their codebase management.
Comments
0Start the conversation
Share the first comment.