fork-cleaner logo

fork-cleaner caarlos0

Use this command to install fork-cleaner:
winget install --id=caarlos0.fork-cleaner -e

Cleans up old and inactive forks on your github account.

Fork Cleaner

Fork Cleaner is a tool designed to clean up old and inactive forks on your GitHub account. It helps you identify and manage unused repositories efficiently.

  • Key Features:

    • Automatically identifies unused forks based on activity levels.
    • Provides options to delete or archive these forks, streamlining your repository management.
    • Checks upstream repository status before deletion to ensure no critical information is lost.
    • Supports command-line usage with personal access tokens for secure operations.
    • Can be installed via winget for easy setup.
  • Audience & Benefit: Ideal for developers and teams managing multiple GitHub forks, Fork Cleaner helps maintain a clean and organized account. By removing inactive or redundant repositories, it reduces clutter and improves efficiency, allowing users to focus on active projects.

Fork Cleaner is a straightforward solution for anyone looking to declutter their GitHub profile with minimal effort.

README

fork-cleaner

Release Software License Build Status Go Report Card Godoc Powered By: GoReleaser

Quickly clean up old and inactive forks on your GitHub account.

Installation

Homebrew

brew install caarlos0/tap/fork-cleaner

snap

snap install fork-cleaner

apt

echo 'deb [trusted=yes] https://repo.caarlos0.dev/apt/ /' | sudo tee /etc/apt/sources.list.d/caarlos0.list
sudo apt update
sudo apt install fork-cleaner

yum

echo '[caarlos0]
name=caarlos0
baseurl=https://repo.caarlos0.dev/yum/
enabled=1
gpgcheck=0' | sudo tee /etc/yum.repos.d/caarlos0.repo
sudo yum install fork-cleaner

deb/rpm/apk

Download the .apk, .deb or .rpm from the latest release and install with the appropriate commands.

Manually

Download the binaries from the latest release or clone the repository and build from source.

Usage

You'll need to create a personal access token with repo and delete_repo permissions. You'll need to pass this token to fork-cleaner with the --token flag.

fork-cleaner --token ""

fork-cleaner will load your forked repositories, displaying the oldest first. This can take a little while as fork-cleaner will iterate over the page of forks and check the upstream repository's status (e.g. checking for active PRs).

Troubleshooting

Taking forever to load?

The app hits various endpoints in order to collect information on the upstream repository, this can take a while if you have a lot of forks. Setting -skip-upstream=true will skip checking commits, issues, PRs, etc on each upstream repository, potentially alleviating this issue.

I've hit the rate limit.

You can check your current limits by calling GitHub's API:

curl -L \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer " \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  https://api.github.com/rate_limit

Stargazers

Stargazers over time

Versions
2.3.1
2.3.0
Website
License