npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

git-removed-branches

v2.3.1

Published

Git: Remove local branches which are no longer available on the remote

Downloads

3,141

Readme

List or remove local tracked branches, which are deleted from the remote.

Addresses questions, like:

Why?

Because I'm tired of doing every time git fetch -p, git branch -r, git branch and keep comparing which branches are gone from the GitHub, but still available locally and doing git branch -D ${branch_name} on one by one of them.

What does it do?

This command will compare your local branches with remote and show you branches that are no longer available on remote but are still presented in your local repository. You can use it to view and delete all (remotely) removed branches in one go using --prune flag.

This command works without the need to run git fetch -p, but a working network connection to your remote is required. If no connection can be established with the remote repository, then local information about your remote will be used instead. If your local repository is not in sync with the remote repository, it will warn you about it.

Installation

NPM

$ npm install -g git-removed-branches

Please install a package globally with -g flag so that you can use it directly as a sub command of git, like this:

$ git removed-branches

NPX

It's also possible to use package through npx directly. Execute inside any git folder:

$ npx git-removed-branches

Usage

$ git removed-branches

This command will look through the branches that are no longer available on the remote and display them. In case you haven't run git fetch -p, it will warn you to do so.

This command is safe to run and it will not alter your repository.

Removing

To delete local branches use --prune or -p flag

$ git removed-branches --prune

This command will compare your local branches to the remote ones and remove, those which do not exist anymore on the remote side.

Different remote

If you have configured remote alias to something different than 'origin', you can use --remote or -r flag to specify the name of the remote. e.g., to specify remote to be upstream, you can use:

$ git removed-branches --remote upstream

Forcing removal

If you get an error when trying to delete branches:

The branch {branch_name} is not fully merged.

you can force deletion by using --force flag or use -f alias

$ git removed-branches --prune --force

Version

To find out, which version you use ( since 2.3.0 )

git removed-branches --version

Troubleshooting:

If you encounter error ERR_CHILD_PROCESS_STDIO_MAXBUFFER it is possible that your repository contains too much branches, more then 3382. ( see discussion )

You can fix this, by specifying NODE_MAX_BUFFER environment variable, like:

NODE_MAX_BUFFER=1048576 git removed-branches