Add clean support

--clean is useful to reset to a clean repo. It is very dangerous that
could reset the local changes.