* Nicholas Clark <n...@ccl4.org> [2013-12-13 11:20]: > On Fri, Dec 13, 2013 at 10:11:09AM +0000, Nicholas Clark wrote: > > balls it up). And as long as you don't throw away the terminal > > output, push anything or run `git gc`, there's always about 30 days > > to recover from any mess* from the various internal reflogs. > > > * Other than git reset --hard > > Bother, or git clean -dxf
Or git checkout. There have to be a few more, basically any command that is willing to touch the working copy β while the working copy is already dirty β may potentially lose data. Anything that only operates on the object database or only accepts to touch the working copy if itβs clean, is 100% safe, since objects are immutable by design while they reside in the object database. (And you can turn GC off to ensure they stay there forever, which I do on my dev boxes (as opposed to central repo hosts).) The only thing that can happen is that the user lacks the experience to understand the state they put Git into, and how to change it (back, or in any other direction) β but not actual data loss. -- Aristotle Pagaltzis // <http://plasmasturm.org/>