git-internals-pdf
PDF on Git Internals (by pluralsight)
git-filter-repo
Quickly rewrite git repository history (filter-branch replacement) (by newren)
git-internals-pdf | git-filter-repo | |
---|---|---|
23 | 56 | |
2,562 | 10,512 | |
- | 4.5% | |
0.0 | 7.7 | |
over 2 years ago | about 1 month ago | |
Ruby | Python | |
- | GNU General Public License v3.0 or later |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
git-internals-pdf
Posts with mentions or reviews of git-internals-pdf.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2025-04-07.
- 20 years of Git. Still weird, still wonderful
-
What approach helped you to best learn Git?
For me the Peepcode Git Internals book was a great peek under the hood. I went from "Git has a lot of magical incantations" to "Git is pretty simple and I could probably build a version of it".
-
Git as a Beginner
I generally recommend the Peepcode Git Internals book. The first half explains the internals of how Git works, and the second half is a command reference.
- Git book recommendations?
- What Git primitives get SHA-1'd to generate a hash?
-
How well do you guys know Git
Once you get the hang of basic Git operations, you should look into how Git works under the hood. Git Internals helped me a lot on this.
- ⛔ Squash commits considered harmful ⛔
-
How should i go about learning git?
I often recommend the Peepcode Git Internals book. The first half talks about how Git works internally. The second half is a "how to use Git" tutorial. I think understanding the internals (which aren't really that complicated) can really help to demystify Git.
-
I was said that I do not know how Git works
Conceptually, Git's not really all that complicated. I always recommend people to read the Peepcode Git Internals book (originally $9, now free): https://github.com/pluralsight/git-internals-pdf/blob/master/drafts/peepcode-git.pdf
-
would pulling make sense here?
Check out this page if you haven't yet (alternatively, direct link to the PDF.) I hear it's all good, but the Understanding Git chapter is the one I'd specifically point you to.
git-filter-repo
Posts with mentions or reviews of git-filter-repo.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2025-06-22.
- Git-Filter-Repo
- Git Notes: Git's coolest, most unloved feature (2022)
-
Clean Up Your GitHub using git-filter-repo: Email Updates and Commit Messages
This tool is not only faster but also safer than git filter-branch. It's specifically designed to handle repository history rewriting with better safety guarantees and performance. More details here.
- Git-filter-repo: Quickly rewrite Git repository history
-
Shrunked JavaScript monorepo Git size by 94%
filter-repo is the recommended way these days:
https://github.com/newren/git-filter-repo
-
Git: Keeping your email safe in public repositories
Install git-filter-repo: tool used to rewrite the git repository history.
-
Cleaning Your Git History: Safely Removing Sensitive Data
**WARNING**: git-filter-branch has a glut of gotchas generating mangled history rewrites. Hit Ctrl-C before proceeding to abort, then use an alternative filtering tool such as 'git filter-repo' (https://github.com/newren/git-filter-repo/) instead. See the filter-branch manual page for more details; to squelch this warning, set FILTER_BRANCH_SQUELCH_WARNING=1. Proceeding with filter-branch... Rewrite a3a48b09e282854c80bf4ad02a017e249e161fd8 (2/8) (0 seconds passed, remaining 0 predicted) rm 'config.js' Rewrite 6e788e83a338e45b348d93d682b32c816ee2fbff (3/8) (0 seconds passed, remaining 0 predicted) rm 'config.js' Rewrite 7a378a0145bce70bea213ca5f9062138544db5f2 (4/8) (0 seconds passed, remaining 0 predicted) rm 'config.js' Rewrite 0637c9659623644cfceb35be10f2a1fe5c468e04 (5/8) (0 seconds passed, remaining 0 predicted) rm 'config.js' Rewrite 6c421eb99adc6b987cff7f3cada31e9313638072 (6/8) (0 seconds passed, remaining 0 predicted) rm 'config.js' Rewrite 98001e5b97270efa4a8ab5bd0452be56dd76883d (7/8) (0 seconds passed, remaining 0 predicted) rm 'config.js' Rewrite 2ca4e161a4af2b8f38c46faf848fdbb3e550f23c (8/8) (0 seconds passed, remaining 0 predicted) rm 'config.js' Ref 'refs/heads/secret_keys' was rewritten.
-
(RE not sharing inputs) PSA: "deleting" and committing to git doesn't actually remove it
Yup you need https://github.com/newren/git-filter-repo Take a look at https://github.com/newren/git-filter-repo/blob/main/INSTALL.md for instructions
-
How I teach Git
git filter-repo: a third-party command actually, as a replacement to Git's own filter-branch, that allows rewriting the whole history of a repository to remove a mistakenly added file, or help extract part of the repository to another.
-
Merging old repos into a monolithic git repo archive
I needed to archive some old repositories into a monorepo and of course I gave myself the requirement of maintaining git history, in some way. I tried a couple of solutions but it wasn't until I stumbled upon the git-filter-repo project at https://github.com/newren/git-filter-repo and another article which I've since lost (which was badly documented anyway) that I was able to figure out how to do this.
What are some alternatives?
When comparing git-internals-pdf and git-filter-repo you can also consider the following projects:
Crafting Interpreters - Repository for the book "Crafting Interpreters"
bfg-repo-cleaner - Removes large or troublesome blobs like git-filter-branch does, but faster. And written in Scala
CppCoreGuidelines - The C++ Core Guidelines are a set of tried-and-true guidelines, rules, and best practices about coding in C++
gh-action-pypi-publish - The blessed :octocat: GitHub Action, for publishing your :package: distribution files to PyPI, the tokenless way: https://github.com/marketplace/actions/pypi-publish
github-cheat-sheet - A list of cool features of Git and GitHub.
josh - Just One Single History