My .git directory is overly large and displeasing me. I have, in the past, added and committed some directories that were full of large binary files. I've subsequently removed them from the latest master, but they are still stored in the history. I will never need them. My primary intent is to reduce the size of the .git directory, with as few side effects as possible.
Can I purge particular directories from the entire repo history, of course potentially causing possible dependency earthquakes (not in this case as these files have no dependents but for future reference)
Can I completely remove all history prior to a particular commit. I have no reason to keep the entire history of this project from day one, and if I did, I could just put it in a fork that I never sync with the main repo
A subset of 2, can I purge the entire repo except for the most recent commit?
What happens if another developer fetch/merges a repo which has been butchered in the above ways?
I know of manual ways to do all of the above but I am lazy and want an easy, git way to do the above with as few commands as possible.
Thanks