Add methods to checkout all files and force push.
Rewrite pusher according to revert changes on local and remote repository  more securely if a problem happend, thanks to @jubianchi for its help.