Git Clear your History

Page content

Clear History

have you ever checked in some binarys, confidential stuff or something else by mistake ? Git will keep all your history, that’s their design and purpose.

how ever, if you need to cleanup once, here is a short tutorial.

Kill Git Config

cd myrepo
cat .git/config -> note down the url
rm -rf .git

Create New Repo

git init
git add .
git commit -m "Removed history, ..."

Push Remote

git remote add origin git@host/yourrepo  <- URL you noted down above
git push -u --force origin master

All in One

_url=$(git remote -v |awk '/fetch/ { print $2 }')
rm -rf .git
git init
git add .
git commit -m "Removed history ..."
git remote add origin ${_url}
git push -u --force origin master
unset _url

and you’re done :)

Reset Repo

you may wanna reset your local repo fetch from origin ? and clean local, untracked filed ?

git fetch origin
git reset --hard origin/master
git clean -d -f

some more Git commands

sha256: 63a6a82f17f58682c91c2f0bb457a6152bb515ff389faddbe9f95ee10c6011e3