Let’s say I was doing stuff in a local directory. I added a large file, I commit and push, but I get an error stating that the file is too large. If I didn’t care about this file making its way to the Github repo, how can I go about removing it from the commit without ruining the rest of my progress? I tried deleting the file, re-adding and re-commiting, but I get the same error when I push. So far my workaround has been to copy everything in the directory except .git to a different, temporary folder, revert to origin/master, and then replace everything back in with the changes I want. I haven’t found a good solution for just… ignoring the large file or removing it from the commit, nothing I’ve found online has worked and the commit always just fails because of the large file.
Edit: hey everyone thanks for all the replies! I appreciate it, I’ll have to test out these sometime.


That’s the sort of general question where I couldn’t give you a better answer than you could find by Googling if I tried. But for my own amusement, a one sentence answer is that it’s a sort of mega command that lets you do various types of rewriting history like removing, reordering, redoing, rewording.
I recommend using a good GUI for it. That’s usually a lot easier than vim or another text editor if you’re not ready to go down that rabbit hole.