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.
- VibeSurgeon@piefed.socialEnglish10 days
If it’s the last commit, you can undo the commit, and re-make it as you please by using
git reset HEAD~1. You can then stage the files you actually want in the commit.Another option is to amend the commit to not include that file, by doing
git rm --cached <filename>followed bygit commit --amend.The reason you can’t do the prior in a separate follow-up commit is that the file would still be in the git history, and hence it must be pushed to GitHub along with the rest of the repo files.
If the problem is not on the latest commit, you can do an interactive rebase, and re-do the commit that way.
The reason you can’t do the prior in a separate follow-up commit is that the file would still be in the git history, and hence it must be pushed to GitHub along with the rest of the repo files.
This makes sense. Is it possible to delete the offending commit completely? I use github like a cloud service for files, writing, and class notes, mostly just to push things from my laptop to my desktop and vice versa, so I’m not particularly worried about keeping commit history or anything. If not, then I’ll try out the
rmmethod.- 9 days
Is there a reason why you don’t use conventional cloud storage? The only reason I can think for someone to use a git forge for generic cloud storage is the version history, which you’ve said you don’t need. Something like your OP problem wouldn’t happen for a conventional cloud provider.
price, desire to keep out of commercial cloud providers + inability to host my own private cloud service, desire/need to be more familiar with git in general as a compsci major, and ease of use. those are pretty much the main reasons
- 8 days
desire to keep out of commercial cloud providers
I’m afraid that GitHub is run by Microsoft and I would consider it pretty thoroughly corporate these days.
Fair enough if you want to get more familiar with git (although using it as a cloud service is basically just gonna be add all and then commit, surely? you’re not practising any other git operations if only using as cloud storage?), but people normally do this with programming projects, which you should have no shortage of as a CS major.
- 10 days
If you have additional commits made after the commit that added the big file, you can use interactive rebase to edit the offending commit and redo the rest on top of it. If the offending commit is the latest one, then you can use
reset --soft git reset --soft HEAD~1 ? This assumes it is not pushed to the remote already.
git reset HEAD^ -- somepath/whateverfile git commit --amend --no-edit- 9 days
Make sure your working tree is clean (if not, commit or stash your changes), then run
$ git rm ./that_one_big_file $ git history fixup deadbeefReplace
deadbeefwith the commit that introducedthat_one_big_file.For more complex history editing tasks, see git rebase in depth.
- whats_a_lemmy@midwest.socialEnglish10 days
Use
git resetto repoint your branch head to an earlier commit, before the problematic one - 10 days
I’ve forgotten most of my git commands I just tell an agent what I want and it happens.




